Re: [PATCH net 0/6] rxrpc, afs: Interruptibility fixes

From: David Miller
Date: Thu Mar 19 2020 - 23:28:59 EST


From: David Howells <dhowells@xxxxxxxxxx>
Date: Thu, 19 Mar 2020 11:53:29 +0000

> Here are a number of fixes for AF_RXRPC and AFS that make AFS system calls
> less interruptible and so less likely to leave the filesystem in an
> uncertain state. There's also a miscellaneous patch to make tracing
> consistent.
>
> (1) Firstly, abstract out the Tx space calculation in sendmsg. Much the
> same code is replicated in a number of places that subsequent patches
> are going to alter, including adding another copy.
>
> (2) Fix Tx interruptibility by allowing a kernel service, such as AFS, to
> request that a call be interruptible only when waiting for a call slot
> to become available (ie. the call has not taken place yet) or that a
> call be not interruptible at all (e.g. when we want to do writeback
> and don't want a signal interrupting a VM-induced writeback).
>
> (3) Increase the minimum delay on MSG_WAITALL for userspace sendmsg() when
> waiting for Tx buffer space as a 2*RTT delay is really small over 10G
> ethernet and a 1 jiffy timeout might be essentially 0 if at the end of
> the jiffy period.
>
> (4) Fix some tracing output in AFS to make it consistent with rxrpc.
>
> (5) Make sure aborted asynchronous AFS operations are tidied up properly
> so we don't end up with stuck rxrpc calls.
>
> (6) Make AFS client calls uninterruptible in the Rx phase. If we don't
> wait for the reply to be fully gathered, we can't update the local VFS
> state and we end up in an indeterminate state with respect to the
> server.
>
> The patches are tagged here:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
> rxrpc-fixes-20200319

Pulled, thanks David.