summary refs log tree commit diff
path: root/fs/cifs/cifsproto.h
diff options
context:
space:
mode:
authorJeff Layton <jlayton@redhat.com>2011-05-19 16:22:58 -0400
committerSteve French <sfrench@us.ibm.com>2011-05-25 20:12:16 +0000
commitf7910cbd9fa319ee4501074f1f3b5ce23c4b1518 (patch)
tree940a9f9836771d2b8820dff93010457ed3e0444c /fs/cifs/cifsproto.h
parentc3d17b63e5eafcaf2678c11de801c189468631c8 (diff)
downloadlinux-f7910cbd9fa319ee4501074f1f3b5ce23c4b1518.tar.gz
cifs: clean up wsize negotiation and allow for larger wsize
Now that we can handle larger wsizes in writepages, fix up the
negotiation of the wsize to allow for that. find_get_pages only seems to
give out a max of 256 pages at a time, so that gives us a reasonable
default of 1M for the wsize.

If the server however does not support large writes via POSIX
extensions, then we cap the wsize to (128k - PAGE_CACHE_SIZE). That
gives us a size that goes up to the max frame size specified in RFC1001.

Finally, if CAP_LARGE_WRITE_AND_X isn't set, then further cap it to the
largest size allowed by the protocol (USHRT_MAX).

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-and-Tested-by: Pavel Shilovsky <piastry@etersoft.ru>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/cifsproto.h')
0 files changed, 0 insertions, 0 deletions