GIT 5fe14c851efedf95b0e7652a3a7b93ec899d1599 git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6.git commit Author: Steve French Date: Tue Nov 7 19:26:33 2006 +0000 [CIFS] Explicitly set stat->blksize CIFS may perform I/O over the network in larger chunks than the page size, so it should explicitly set stat->blksize to ensure optimal I/O bandwidth Signed-off-by: Dave Kleikamp Signed-off-by: Steve French commit 4891d53956abd4ad9d94127c50d931124319a324 Author: Steve French Date: Tue Nov 7 16:31:16 2006 +0000 [CIFS] NFS stress test generates flood of "close with pending write" messages Informational/debug message was being logged too often. The error case of logging having to send a close with (presumably stuck on buggy server) pending writes is still logged. Signed-off-by: Steve French fs/cifs/file.c | 7 +++++-- fs/cifs/inode.c | 4 +++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/fs/cifs/file.c b/fs/cifs/file.c index 7e056b9..4b07a8c 100644 --- a/fs/cifs/file.c +++ b/fs/cifs/file.c @@ -492,10 +492,13 @@ int cifs_close(struct inode *inode, stru the struct would be in each open file, but this should give enough time to clear the socket */ - cERROR(1,("close with pending writes")); +#ifdef CONFIG_CIFS_DEBUG2 + cFYI(1,("close delay, write pending")); +#endif /* DEBUG2 */ msleep(timeout); timeout *= 4; - } + } + cERROR(1,("close with pending writes")); rc = CIFSSMBClose(xid, pTcon, pSMBFile->netfid); } diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c index dffe295..1ad8c9f 100644 --- a/fs/cifs/inode.c +++ b/fs/cifs/inode.c @@ -1089,8 +1089,10 @@ int cifs_getattr(struct vfsmount *mnt, s struct kstat *stat) { int err = cifs_revalidate(dentry); - if (!err) + if (!err) { generic_fillattr(dentry->d_inode, stat); + stat->blksize = CIFS_MAX_MSGSIZE; + } return err; }