diff options
Diffstat (limited to 'fs/afs/fs_operation.c')
-rw-r--r-- | fs/afs/fs_operation.c | 7 |
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) { |