Christoph Hellwig 9f87fc4d72 block: queue data commands from the flush state machine at the head
We used to insert the data commands following a pre-flush to the head
of the queue until commit 1e82fadfc6b ("blk-mq: do not do head insertions
post-pre-flush commands").  Not doing this seems to cause hangs of
such commands on NFS workloads when exported from file systems with
SATA SSDs.  I have no idea why this would starve these workloads,
but doing a semantic revert of this patch (which looks quite different
due to various other changes) fixes the hangs.

Fixes: 1e82fadfc6b ("blk-mq: do not do head insertions post-pre-flush commands")
Reported-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: Chuck Lever <chuck.lever@oracle.com>
Link: https://lore.kernel.org/r/20230714143014.11879-1-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2023-07-14 08:42:58 -06:00
..
2023-06-21 13:18:15 -06:00
2023-06-30 11:57:07 -07:00
2023-06-01 09:13:31 -06:00
2023-04-26 12:52:58 -07:00
2023-06-30 11:57:07 -07:00
2023-06-26 12:47:20 -07:00
2023-06-26 12:47:20 -07:00
2023-06-16 10:08:09 -06:00
2023-06-30 11:57:07 -07:00
2023-04-26 12:52:58 -07:00
2022-03-07 12:48:35 -07:00