[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cc2bd808-194e-431d-b733-4aa7bd410da3@kernel.dk>
Date: Wed, 5 Jun 2024 12:14:16 -0600
From: Jens Axboe <axboe@...nel.dk>
To: ming.lei@...hat.com, hch@....de, f.weber@...xmox.com, bvanassche@....org,
Chengming Zhou <chengming.zhou@...ux.dev>
Cc: linux-block@...r.kernel.org, linux-kernel@...r.kernel.org,
zhouchengming@...edance.com
Subject: Re: [PATCH] block: fix request.queuelist usage in flush
On 6/4/24 8:17 AM, Jens Axboe wrote:
>
> On Tue, 04 Jun 2024 14:47:45 +0800, Chengming Zhou wrote:
>> Friedrich Weber reported a kernel crash problem and bisected to commit
>> 81ada09cc25e ("blk-flush: reuse rq queuelist in flush state machine").
>>
>> The root cause is that we use "list_move_tail(&rq->queuelist, pending)"
>> in the PREFLUSH/POSTFLUSH sequences. But rq->queuelist.next == xxx since
>> it's popped out from plug->cached_rq in __blk_mq_alloc_requests_batch().
>> We don't initialize its queuelist just for this first request, although
>> the queuelist of all later popped requests will be initialized.
>>
>> [...]
>
> Applied, thanks!
>
> [1/1] block: fix request.queuelist usage in flush
> commit: a315b96155e4c0362742aa3c3b3aebe2ec3844bd
Given the pending investigation into crashes potentially caused by this
patch, I've dropped it from the 6.10 tree for now.
--
Jens Axboe
Powered by blists - more mailing lists