Don't pass the vnode pointer through into the inline bulk status op. We want to process the status records outside of it anyway.
Signed-off-by: David Howells <dhowe...@redhat.com> --- fs/afs/fsclient.c | 7 +------ fs/afs/yfsclient.c | 10 +--------- 2 files changed, 2 insertions(+), 15 deletions(-) diff --git a/fs/afs/fsclient.c b/fs/afs/fsclient.c index 721ff8d04401..80948af115d4 100644 --- a/fs/afs/fsclient.c +++ b/fs/afs/fsclient.c @@ -2236,7 +2236,6 @@ static int afs_deliver_fs_inline_bulk_status(struct afs_call *call) { struct afs_file_status *statuses; struct afs_callback *callbacks; - struct afs_vnode *vnode = call->reply[0]; const __be32 *bp; u32 tmp; int ret; @@ -2277,8 +2276,7 @@ static int afs_deliver_fs_inline_bulk_status(struct afs_call *call) bp = call->buffer; statuses = call->reply[1]; ret = afs_decode_status(call, &bp, &statuses[call->count], - call->count == 0 ? vnode : NULL, - NULL, NULL); + NULL, NULL, NULL); if (ret < 0) return ret; @@ -2320,8 +2318,6 @@ static int afs_deliver_fs_inline_bulk_status(struct afs_call *call) callbacks = call->reply[2]; xdr_decode_AFSCallBack_raw(call, &callbacks[call->count], &bp); statuses = call->reply[1]; - if (call->count == 0 && vnode && statuses[0].abort_code == 0) - xdr_decode_AFSCallBack(call, vnode, &bp); call->count++; if (call->count < call->count2) goto more_cbs; @@ -2389,7 +2385,6 @@ int afs_fs_inline_bulk_status(struct afs_fs_cursor *fc, } call->key = fc->key; - call->reply[0] = NULL; /* vnode for fid[0] */ call->reply[1] = statuses; call->reply[2] = callbacks; call->reply[3] = volsync; diff --git a/fs/afs/yfsclient.c b/fs/afs/yfsclient.c index b42bd412dba1..3f6d50edf498 100644 --- a/fs/afs/yfsclient.c +++ b/fs/afs/yfsclient.c @@ -2055,7 +2055,6 @@ static int yfs_deliver_fs_inline_bulk_status(struct afs_call *call) { struct afs_file_status *statuses; struct afs_callback *callbacks; - struct afs_vnode *vnode = call->reply[0]; const __be32 *bp; u32 tmp; int ret; @@ -2096,8 +2095,7 @@ static int yfs_deliver_fs_inline_bulk_status(struct afs_call *call) bp = call->buffer; statuses = call->reply[1]; ret = yfs_decode_status(call, &bp, &statuses[call->count], - call->count == 0 ? vnode : NULL, - NULL, NULL); + NULL, NULL, NULL); if (ret < 0) return ret; @@ -2138,11 +2136,6 @@ static int yfs_deliver_fs_inline_bulk_status(struct afs_call *call) bp = call->buffer; callbacks = call->reply[2]; xdr_decode_YFSCallBack_raw(call, &callbacks[call->count], &bp); - statuses = call->reply[1]; - if (call->count == 0 && vnode && statuses[0].abort_code == 0) { - bp = call->buffer; - xdr_decode_YFSCallBack(call, vnode, &bp); - } call->count++; if (call->count < call->count2) goto more_cbs; @@ -2210,7 +2203,6 @@ int yfs_fs_inline_bulk_status(struct afs_fs_cursor *fc, } call->key = fc->key; - call->reply[0] = NULL; /* vnode for fid[0] */ call->reply[1] = statuses; call->reply[2] = callbacks; call->reply[3] = volsync;