Hi Christian, Here are some miscellaneous fixes and changes for netfslib, if you could pull them: (1) Fix a number of read-retry hangs, including: (a) Incorrect getting/putting of references on subreqs as we retry them. (b) Failure to track whether a last old subrequest in a retried set is superfluous. (c) Inconsistency in the usage of wait queues used for subrequests (ie. using clear_and_wake_up_bit() whilst waiting on a private waitqueue). (Note that waitqueue consistency also needs looking at for netfs_io_request structs.) (2) Add stats counters for retries and publish in /proc/fs/netfs/stats. This is not a fix per se, but is useful in debugging and shouldn't otherwise change the operation of the code. (3) Fix the ordering of queuing subrequests with respect to setting the request flag that says we've now queued them all. The patches can also be found here: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=netfs-fixes Thanks, David David Howells (3): netfs: Fix a number of read-retry hangs netfs: Add retry stat counters netfs: Fix setting NETFS_RREQ_ALL_QUEUED to be after all subreqs queued fs/netfs/buffered_read.c | 19 +++++++++++----- fs/netfs/internal.h | 4 ++++ fs/netfs/read_collect.c | 6 +++-- fs/netfs/read_retry.c | 43 +++++++++++++++++++++++++++--------- fs/netfs/stats.c | 9 ++++++++ fs/netfs/write_issue.c | 1 + fs/netfs/write_retry.c | 2 ++ include/linux/netfs.h | 2 +- include/trace/events/netfs.h | 4 +++- 9 files changed, 70 insertions(+), 20 deletions(-)