Преглед изворни кода

afs: Check for fatal error when in waiting for ack state

When it's in the waiting-for-ACK state, the AFS filesystem needs to check
the result of rxrpc_kernel_recv_data() any time it is notified to see if it
is indicating a fatal error.  If this is the case, it needs to mark the
call completed otherwise the call just sits there and never goes away.

Signed-off-by: David Howells <dhowells@redhat.com>
David Howells пре 8 година
родитељ
комит
9008f998a2
1 измењених фајлова са 1 додато и 1 уклоњено
  1. 1 1
      fs/afs/rxrpc.c

+ 1 - 1
fs/afs/rxrpc.c

@@ -418,7 +418,7 @@ static void afs_deliver_to_call(struct afs_call *call)
 						     &call->abort_code);
 			if (ret == -EINPROGRESS || ret == -EAGAIN)
 				return;
-			if (ret == 1) {
+			if (ret == 1 || ret < 0) {
 				call->state = AFS_CALL_COMPLETE;
 				goto done;
 			}