[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <783e293e-8e4e-7856-f492-395da2f5d376@acm.org>
Date: Mon, 10 Apr 2023 15:20:06 -0700
From: Bart Van Assche <bvanassche@....org>
To: Yu Kuai <yukuai1@...weicloud.com>,
Chengming Zhou <zhouchengming@...edance.com>, axboe@...nel.dk,
tj@...nel.org
Cc: paolo.valente@...aro.org, josef@...icpanda.com,
linux-block@...r.kernel.org, cgroups@...r.kernel.org,
linux-kernel@...r.kernel.org, "yukuai (C)" <yukuai3@...wei.com>
Subject: Re: [PATCH v2 0/3] blk-cgroup: some cleanup
On 4/10/23 11:47, Bart Van Assche wrote:
> On 4/9/23 18:57, Yu Kuai wrote:
>> Hi, Bart
>>
>> 在 2023/04/08 2:41, Bart Van Assche 写道:
>>> On 4/6/23 07:50, Chengming Zhou wrote:
>>>> These are some cleanup patches of blk-cgroup. Thanks for review.
>>>
>>> With these patches applied, my kernel test VM crashes during boot.
>>> The following crash disappears if I revert these patches:
>>>
>>> BUG: KASAN: null-ptr-deref in bio_associate_blkg_from_css+0x83/0x240
>>> Read of size 8 at addr 0000000000000518 by task blkid/5885
>>> Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS
>>> 1.16.0-debian-1.16.0-5 04/01/2014
>>> Call Trace:
>>> dump_stack_lvl+0x4a/0x80
>>> print_report+0x21e/0x260
>>> kasan_report+0xc2/0xf0
>>> __asan_load8+0x69/0x90
>>> bio_associate_blkg_from_css+0x83/0x240
>>> bfq_bio_bfqg+0xce/0x120 [bfq]
>>> bfq_bic_update_cgroup+0x2f/0x3c0 [bfq]
>>> bfq_init_rq+0x1e8/0xb10 [bfq]
>>> bfq_insert_request.isra.0+0xa3/0x420 [bfq]
>>> bfq_insert_requests+0xca/0xf0 [bfq]
>>> blk_mq_dispatch_rq_list+0x4c0/0xb00
>>
>> I found this call trace quite weird, I can't figure out how
>> bfq_insert_requests can be called from blk_mq_dispatch_rq_list,
>> can you show the add2line result?
>
> Hi Kuai,
>
> Thanks for having taken a look. I ran my tests with this patch series on
> top of Jens' for-next branch: "[PATCH v2 00/12] Submit zoned writes in
> order"
> (https://lore.kernel.org/linux-block/20230407235822.1672286-1-bvanassche@acm.org/T/#m4c8c7ca5a5627510dc1709847b11589e8791b6b6). I will take a closer look and see which of these two patch series needs to be adjusted.
(replying to my own e-mail)
I think I found the root cause: bio->bi_bdev is NULL for pass-through
requests and BFQ doesn't like it that bio->bi_bdev is NULL. I will make
sure that pass-through requests are not submitted to any I/O scheduler.
Thanks,
Bart.
Powered by blists - more mailing lists