On 12.07.23 15:29, Chuck Lever III wrote: >> On Jul 12, 2023, at 7:34 AM, Chengming Zhou <chengming.zhou@xxxxxxxxx> wrote: >> On 2023/7/11 20:01, Christoph Hellwig wrote: >>> On Mon, Jul 10, 2023 at 05:40:42PM +0000, Chuck Lever III wrote: >>>>> blk_rq_init_flush(rq); >>>>> - rq->flush.seq |= REQ_FSEQ_POSTFLUSH; >>>>> + rq->flush.seq |= REQ_FSEQ_PREFLUSH; >>>>> spin_lock_irq(&fq->mq_flush_lock); >>>>> list_move_tail(&rq->flush.list, &fq->flush_data_in_flight); >>>>> spin_unlock_irq(&fq->mq_flush_lock); >>>> >>>> Thanks for the quick response. No change. >>> I'm a bit lost and still can't reprodce. Below is a patch with the >>> only behavior differences I can find. It has two "#if 1" blocks, >>> which I'll need to bisect to to find out which made it work (if any, >>> but I hope so). >> >> I tried today to reproduce, but can't unfortunately. >> >> Could you please also try the fix patch [1] from Ross Lagerwall that fixes >> IO hung problem of plug recursive flush? >> >> (Since the main difference is that post-flush requests now can go into plug.) >> >> [1] https://lore.kernel.org/all/20230711160434.248868-1-ross.lagerwall@xxxxxxxxxx/ > > Thanks for the suggestion. No change, unfortunately. Chuck, what's the status here? This thread looks stalled, that's why I wonder. FWIW, I noticed a commit with a Fixes: tag for your culprit in next (see 28b24123747098 ("blk-flush: fix rq->flush.seq for post-flush requests")). But unless I missed something you are not CCed, so I guess that's a different issue? Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat) -- Everything you wanna know about Linux kernel regression tracking: https://linux-regtracking.leemhuis.info/about/#tldr If I did something stupid, please tell me, as explained on that page. #regzbot poke