]> git.baikalelectronics.ru Git - kernel.git/commit
afs: Check for rxrpc call completion in wait loop
authorMarc Dionne <marc.dionne@auristor.com>
Fri, 12 Apr 2019 15:34:02 +0000 (16:34 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 12 Apr 2019 23:57:23 +0000 (16:57 -0700)
commit9a9a0d900ed17ebab94121291c58891d2d5b975a
treef17c43fc45eef23ab994a6063f2a1ae617e43a86
parent0e31273002caa8221038bec24eceba8b56c516b9
afs: Check for rxrpc call completion in wait loop

Check the state of the rxrpc call backing an afs call in each iteration of
the call wait loop in case the rxrpc call has already been terminated at
the rxrpc layer.

Interrupt the wait loop and mark the afs call as complete if the rxrpc
layer call is complete.

There were cases where rxrpc errors were not passed up to afs, which could
result in this loop waiting forever for an afs call to transition to
AFS_CALL_COMPLETE while the rx call was already complete.

Signed-off-by: Marc Dionne <marc.dionne@auristor.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
fs/afs/rxrpc.c