summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2004-02-18 04:55:26 -0800
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-02-18 04:55:26 -0800
commit6a69bfeed836db64c6c3e16881d28c887bf52322 (patch)
treedd0960a649c08f0991b8f59c68316a5d9ad6d102 /include/linux
parentce8b13c94d766c44623108fbbcb80ae25d45f56d (diff)
[PATCH] off_t in nfsd_commit needs to be loff_t
From: Neil Brown <neilb@cse.unsw.edu.au>, From: Miquel van Smoorenburg <miquels@cistron.nl> While I was stress-testing NFS/XFS on 2.6.1/2.6.2-rc, I found that sometimes my "dd" would exit with: # dd if=/dev/zero bs=4096 > /mnt/file dd: writing `standard output': Invalid argument 1100753+0 records in 1100752+0 records out After adding some debug printk's to the server and client code and some tcpdump-ing, I found that the NFSERR_INVAL was returned by nfsd_commit on the server. Turns out that the "offset" argument is off_t instead of loff_t. It isn't used at all (unfortunately), but it _is_ checked for sanity, so that's where the error came from.
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/nfsd/nfsd.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/nfsd/nfsd.h b/include/linux/nfsd/nfsd.h
index 97a57608a6e6..9a23efb48ec5 100644
--- a/include/linux/nfsd/nfsd.h
+++ b/include/linux/nfsd/nfsd.h
@@ -86,7 +86,7 @@ int nfsd_create_v3(struct svc_rqst *, struct svc_fh *,
struct svc_fh *res, int createmode,
u32 *verifier, int *truncp);
int nfsd_commit(struct svc_rqst *, struct svc_fh *,
- off_t, unsigned long);
+ loff_t, unsigned long);
#endif /* CONFIG_NFSD_V3 */
int nfsd_open(struct svc_rqst *, struct svc_fh *, int,
int, struct file *);