Andy Adamson bf118a342f NFSv4: include bitmap in nfsv4 get acl data
The NFSv4 bitmap size is unbounded: a server can return an arbitrary
sized bitmap in an FATTR4_WORD0_ACL request.  Replace using the
nfs4_fattr_bitmap_maxsz as a guess to the maximum bitmask returned by a server
with the inclusion of the bitmap (xdr length plus bitmasks) and the acl data
xdr length to the (cached) acl page data.

This is a general solution to commit e5012d1f "NFSv4.1: update
nfs4_fattr_bitmap_maxsz" and fixes hitting a BUG_ON in xdr_shrink_bufhead
when getting ACLs.

Fix a bug in decode_getacl that returned -EINVAL on ACLs > page when getxattr
was called with a NULL buffer, preventing ACL > PAGE_SIZE from being retrieved.

Cc: stable@kernel.org
Signed-off-by: Andy Adamson <andros@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2012-01-05 10:42:42 -05:00
..
2011-12-22 22:34:56 -05:00
2011-12-23 02:15:14 -05:00
2011-11-26 15:49:07 -05:00
2011-12-22 22:34:56 -05:00
2011-12-22 22:34:56 -05:00
2011-10-13 16:05:07 -04:00
2011-11-26 15:57:36 -05:00
2011-09-16 19:20:20 -04:00
2011-11-14 00:10:50 -05:00
2011-07-05 15:26:57 -04:00
2011-07-05 15:26:57 -04:00