[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250708001848.2775-1-hdanton@sina.com>
Date: Tue, 8 Jul 2025 08:18:47 +0800
From: Hillf Danton <hdanton@...a.com>
To: Bart Van Assche <bvanassche@....org>
Cc: axboe@...nel.dk,
josef@...icpanda.com,
linux-block@...r.kernel.org,
syzbot <syzbot+3dbc6142c85cc77eaf04@...kaller.appspotmail.com>,
Ming Lei <ming.lei@...hat.com>,
Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>,
linux-kernel@...r.kernel.org,
nbd@...er.debian.org,
syzkaller-bugs@...glegroups.com
Subject: Re: [syzbot] [nbd?] possible deadlock in nbd_queue_rq
On Mon, 7 Jul 2025 10:39:44 -0700 Bart Van Assche wrote:
> On 7/6/25 5:59 PM, Hillf Danton wrote:
> > and given the second one, the report is false positive.
>
> Whether or not this report is a false positive, the root cause should be
> fixed because lockdep disables itself after the first circular locking
> complaint. From print_usage_bug() in kernel/locking/lockdep.c:
>
> if (!debug_locks_off() || debug_locks_silent)
> return;
>
The root cause could be walked around for example by trying not to init
nbd more than once.
--- x/drivers/block/nbd.c
+++ y/drivers/block/nbd.c
@@ -2620,8 +2620,12 @@ static void nbd_dead_link_work(struct wo
static int __init nbd_init(void)
{
+ static int inited = 0;
int i;
+ if (inited)
+ return 0;
+ inited++;
BUILD_BUG_ON(sizeof(struct nbd_request) != 28);
if (max_part < 0) {
Powered by blists - more mailing lists