For archival purposes, forwarding an incoming command email to
linux-kernel@vger.kernel.org, syzkaller-bugs@googlegroups.com.
***
Subject: Re: Fix reported __del_gendisk deadlock
Author: ujwal.kundur@gmail.com
#syz test
diff --git a/block/genhd.c b/block/genhd.c
index c26733f6324b..bad731186189 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -819,9 +819,11 @@ void del_gendisk(struct gendisk *disk)
disable_elv_switch(disk->queue);
memflags = memalloc_noio_save();
+ mutex_lock(&set->tag_list_lock);
down_read(&set->update_nr_hwq_lock);
__del_gendisk(disk);
up_read(&set->update_nr_hwq_lock);
+ mutex_unlock(&set->tag_list_lock);
memalloc_noio_restore(memflags);
}
}
--
2.30.2