summaryrefslogtreecommitdiff
path: root/fs/afs/fs_operation.c
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2023-10-26 11:54:07 +0300
committerDavid Howells <dhowells@redhat.com>2023-12-24 18:22:53 +0300
commit6f2ff7e89bd05677f4c08fccafcf625ca3e09c1c (patch)
treed1e9ddf29f02e24ad17379b67238c319c44baf45 /fs/afs/fs_operation.c
parent2de5599f63babb416e09b1a6be429a47910dd47c (diff)
downloadlinux-6f2ff7e89bd05677f4c08fccafcf625ca3e09c1c.tar.xz
afs: Don't put afs_call in afs_wait_for_call_to_complete()
Don't put the afs_call struct in afs_wait_for_call_to_complete() but rather have the caller do it. This will allow the caller to fish stuff out of the afs_call struct rather than the afs_addr_cursor struct, thereby allowing a subsequent patch to subsume it. Signed-off-by: David Howells <dhowells@redhat.com> cc: Marc Dionne <marc.dionne@auristor.com> cc: linux-afs@lists.infradead.org
Diffstat (limited to 'fs/afs/fs_operation.c')
-rw-r--r--fs/afs/fs_operation.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/afs/fs_operation.c b/fs/afs/fs_operation.c
index bfb9a7634bd9..1c22d6e77846 100644
--- a/fs/afs/fs_operation.c
+++ b/fs/afs/fs_operation.c
@@ -191,8 +191,11 @@ void afs_wait_for_operation(struct afs_operation *op)
else
op->ac.error = -ENOTSUPP;
- if (op->call)
- op->error = afs_wait_for_call_to_complete(op->call, &op->ac);
+ if (op->call) {
+ afs_wait_for_call_to_complete(op->call, &op->ac);
+ op->error = op->ac.error;
+ afs_put_call(op->call);
+ }
}
switch (op->error) {