Thread (11 messages) 11 messages, 5 authors, 2003-08-26

Re: [BUG] 2.6.0-test4-mm1: NFS+XFS=data corruption

From: Suparna Bhattacharya <hidden>
Date: 2003-08-26 10:56:31
Also in: lkml

On Tue, Aug 26, 2003 at 03:14:12AM -0700, Andrew Morton wrote:
Steve Lord [off-list ref] wrote:
quoted
quoted
quoted
Is this enough information to help find the cause of the bug? If not,
 > > it might be several days (if I'm unlucky, maybe even a week or two)
 > > before I have time to do anything more...
 > > 
 > 
 > -mm kernels have O_DIRECT-for-NFS patches in them.  And some versions of
 > RPM use O_DIRECT.  Whether O_DIRECT makes any difference at the server end
 > I do not know, but it would be useful if you could repeat the test on stock
 > 2.6.0-test4.
 > 
 > Alternatively, run
 > 
 > 	export LD_ASSUME_KERNEL=2.2.5
 > 
 > before running RPM.  I think that should tell RPM to not try O_DIRECT.

 I doubt the NFS client is O_DIRECT capable here, I have run some rpm
 builds over nfs to 2.6.0-test4 and an xfs filesystem, everything is
 behaving so far. I will try mm1 tomorrow.

 Do we know if this NFS V3 or V2 by the way?
OK, sorry for the noise.  It appears that this is due to the AIO patches in
-mm.  fsx-linux fails instantly on nfsv3 to localhost on XFS.  It's OK on
ext2 for some reason.

Binary searching reveals that the offending patch is
O_SYNC-speedup-nolock-fix.patch
I'm not sure if this would help here, but there is
one bug which I just spotted which would affect writev from
XFS. I wasn't passing the nr_segs down properly.

Regards
Suparna

-- 
Suparna Bhattacharya (suparna@in.ibm.com)
Linux Technology Center
IBM Software Labs, India

--- linux-2.6.0-test4-mm1/mm/filemap.c	2003-08-26 10:09:50.000000000 +0530
+++ fix-mm/mm/filemap.c	2003-08-26 16:23:55.000000000 +0530
@@ -1942,7 +1942,7 @@ generic_file_aio_write_nolock(struct kio
 		goto osync;
 	}
 
-	ret = __generic_file_aio_write_nolock(iocb, iov, 1, ppos);
+	ret = __generic_file_aio_write_nolock(iocb, iov, nr_segs, ppos);
 
 	/*
 	 * Avoid doing a sync in parts for aio - its more efficient to
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help