diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-01 20:15:57 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-01 20:15:57 -0800 |
commit | 8aeba3c62a64e0f6527d1a0388b1a6a7060158ba (patch) | |
tree | 8ed24e13468c348ed69d866ca8433bd2f3ccdce6 /fs/cifs/connect.c | |
parent | 61ee9cd5f2e76859222c1d64394ae633f9080163 (diff) | |
parent | e6da74e1f20ea7822e52a9e4fbd3d25bd907e471 (diff) | |
download | talos-op-linux-8aeba3c62a64e0f6527d1a0388b1a6a7060158ba.tar.gz talos-op-linux-8aeba3c62a64e0f6527d1a0388b1a6a7060158ba.zip |
Merge master.kernel.org:/pub/scm/linux/kernel/git/sfrench/cifs-2.6
Diffstat (limited to 'fs/cifs/connect.c')
-rw-r--r-- | fs/cifs/connect.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index 88f60aa52058..e488603fb1e7 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c @@ -1785,7 +1785,16 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb, } else if(volume_info.wsize) cifs_sb->wsize = volume_info.wsize; else - cifs_sb->wsize = CIFSMaxBufSize; /* default */ + cifs_sb->wsize = + min_t(const int, PAGEVEC_SIZE * PAGE_CACHE_SIZE, + 127*1024); + /* old default of CIFSMaxBufSize was too small now + that SMB Write2 can send multiple pages in kvec. + RFC1001 does not describe what happens when frame + bigger than 128K is sent so use that as max in + conjunction with 52K kvec constraint on arch with 4K + page size */ + if(cifs_sb->rsize < PAGE_CACHE_SIZE) { cifs_sb->rsize = PAGE_CACHE_SIZE; /* Windows ME does this */ |