On Fri, Apr 25, 2025 at 08:38:01PM +0200, Christoph Hellwig wrote: > On Thu, Apr 24, 2025 at 11:21:40PM +0800, Ming Lei wrote: > > Move debugfs/sysfs register out of freezing queue in > > __blk_mq_update_nr_hw_queues(), so that the following lockdep dependency > > can be killed: > > > > #2 (&q->q_usage_counter(io)#16){++++}-{0:0}: > > #1 (fs_reclaim){+.+.}-{0:0}: > > #0 (&sb->s_type->i_mutex_key#3){+.+.}-{4:4}: //debugfs > > > > And registering/un-registering debugfs/sysfs does not require queue to be > > frozen. > > Please explain the why it's not required. And talking about lockdep > dependencies is not very useful - it either is an actual lock ordering > issue or a fale positive, but lockdep is just the messenger. Both kobject delete and debugfs unregister drains in-progress .show/.store and read, they do not need to freeze queue. Thanks, Ming