On 6/30/25 5:42 PM, Keith Busch wrote:
On Mon, Jun 30, 2025 at 03:39:18PM -0700, Bart Van Assche wrote:
On 6/27/25 12:17 AM, Christoph Hellwig wrote:
Well, if there are queued never completed bios the freeze will obviously fail. I don't see how this freeze is special vs other freezes or other attributes that freeze.
Hi Christoph,
Do you perhaps want me to remove the freeze/unfreeze calls from all sysfs store callbacks from which it is safe to remove these callbacks?
But don't the remaining attributes that are not safe remain susceptible to this deadlock?
For the remaining sysfs attributes the deadlock can be solved by letting the blk_mq_freeze_queue() call by the sysfs store methods time out if that call takes too long or by making that call interruptible by signals like Ctrl-C. I think its better to let functions like queue_requests_store() fail if an attempt to freeze a request queue takes longer than it should rather than to trigger a kernel deadlock.
Bart.