On 5/8/25 2:28 PM, Ming Lei wrote: > When blk_unregister_queue() is called from add_disk() failure path, > there is race in registering/unregistering elevator queue kobject > from the two code paths, because commit 559dc11143eb ("block: move > elv_register[unregister]_queue out of elevator_lock") moves elevator > queue register/unregister out of elevator lock. > > Fix the race by removing elevator after deleting disk->queue_kobj, > because kobject_del(&disk->queue_kobj) drains in-progress sysfs > show()/store() of all attributes. > > Fixes: 559dc11143eb ("block: move elv_register[unregister]_queue out of elevator_lock") > Reported-by: Nilay Shroff <nilay@xxxxxxxxxxxxx> > Suggested-by: Nilay Shroff <nilay@xxxxxxxxxxxxx> > Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxx> Looks good to me: Reviewed-by: Nilay Shroff <nilay@xxxxxxxxxxxxx>