Re: block: del_gendisk() vs blk_queue_enter() race condition

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 08, 2024 at 03:10:53PM +0900, Sergey Senozhatsky wrote:
> cd->lock still falls a victim of
> "blk_queue_enter() and blk_queue_start_drain() are both called under ->open_mutex"
> thingy, which seems like a primary problem here.  No matter why
> blk_queue_enter() sleeps, draining under ->open_mutex, given that what we
> want to drain can hold ->open_mutex, sometimes isn't going to drain.

Yes. So I think we'll need to move __blk_mark_disk_dead out
of ->open_mutex again, it also isn't protected when calling
blk_mark_disk_dead, but we'll also need to stop the SCSI LLDs from
submitting new commands from their ->relase routines.   Let me cook up
a little series..





[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux