Hi Steven,
I'm trying to integrate your patches with a VA kernel that HJ Lu based on
the RH kernel in rawhide.
I was able to apply your patch without major problems, except in one place
where the code looked a bit different.
Your patch was:
--- linux-rh61-ext3/fs/buffer.c.~1~ Thu Sep 30 23:47:02 1999
+++ linux-rh61-ext3/fs/buffer.c Mon Nov 8 22:06:04 1999
@@ -265,8 +272,8 @@
void sync_dev(kdev_t dev)
{
sync_buffers(dev, 0);
- sync_supers(dev);
sync_inodes(dev);
+ sync_supers(dev);
sync_buffers(dev, 0);
DQUOT_SYNC(dev);
/*
@@ -285,8 +292,8 @@
int fsync_dev(kdev_t dev)
{
sync_buffers(dev, 0);
- sync_supers(dev);
sync_inodes(dev);
+ sync_supers(dev);
DQUOT_SYNC(dev);
return sync_buffers(dev, 1);
}
After I applied it by hand, my tree looks like this:
(note that the buffer syncing moved down)
void sync_dev(kdev_t dev)
{
sync_inodes(dev);
sync_supers(dev);
DQUOT_SYNC(dev);
/* sync all the dirty buffers out to disk only _after_ all the
high level layers finished generated buffer dirty data
(or we'll return with some buffer still dirty on the blockdevice
so breaking the semantics of this call) */
sync_buffers(dev, 0);
/*
* FIXME(eric) we need to sync the physical devices here.
* This is because some (scsi) controllers have huge amounts of
* cache onboard (hundreds of Mb), and we need to instruct
* them to commit all of the dirty memory to disk, and we should
* not return until this has happened.
*
* This would need to get implemented by going through the assorted
* layers so that each block major number can be synced, and this
* would call down into the upper and mid-layer scsi.
*/
}
int fsync_dev(kdev_t dev)
{
sync_buffers(dev, 0);
sync_inodes(dev);
sync_supers(dev);
DQUOT_SYNC(dev);
return sync_buffers(dev, 1);
}
Are the syncs done in the right order? Is the version shown here safe to use?
Thanks,
Marc
-- Microsoft is to software what McDonalds is to gourmet cooking Home page: http://marc.merlins.org/ (friendly to non IE browsers) Finger marc_f@merlins.org for PGP key and other contact information- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Wed Feb 23 2000 - 21:00:34 EST