diff options
author | David Howells <dhowells@redhat.com> | 2020-11-03 16:32:58 +0000 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2020-11-03 09:53:40 -0800 |
commit | c80afa1d9c3603d5eddeb8d63368823b1982f3f0 (patch) | |
tree | 8be2ab8d7008001f79e6ef0dd23baa075044fc4a /fs/afs | |
parent | 90bfdeef83f1d6c696039b6a917190dcbbad3220 (diff) | |
download | lwn-c80afa1d9c3603d5eddeb8d63368823b1982f3f0.tar.gz lwn-c80afa1d9c3603d5eddeb8d63368823b1982f3f0.zip |
afs: Fix warning due to unadvanced marshalling pointer
When using the afs.yfs.acl xattr to change an AuriStor ACL, a warning
can be generated when the request is marshalled because the buffer
pointer isn't increased after adding the last element, thereby
triggering the check at the end if the ACL wasn't empty. This just
causes something like the following warning, but doesn't stop the call
from happening successfully:
kAFS: YFS.StoreOpaqueACL2: Request buffer underflow (36<108)
Fix this simply by increasing the count prior to the check.
Fixes: f5e4546347bc ("afs: Implement YFS ACL setting")
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/afs')
-rw-r--r-- | fs/afs/yfsclient.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/afs/yfsclient.c b/fs/afs/yfsclient.c index 3b1239b7e90d..bd787e71a657 100644 --- a/fs/afs/yfsclient.c +++ b/fs/afs/yfsclient.c @@ -1990,6 +1990,7 @@ void yfs_fs_store_opaque_acl2(struct afs_operation *op) memcpy(bp, acl->data, acl->size); if (acl->size != size) memset((void *)bp + acl->size, 0, size - acl->size); + bp += size / sizeof(__be32); yfs_check_req(call, bp); trace_afs_make_fs_call(call, &vp->fid); |