On 9/23/19 8:12 AM, Ming Lei wrote:
@@ -523,11 +521,9 @@ void elv_unregister_queue(struct request_queue *q)
                kobject_uevent(&e->kobj, KOBJ_REMOVE);
                kobject_del(&e->kobj);
- mutex_lock(&q->sysfs_lock);
                e->registered = 0;
                /* Re-enable throttling in case elevator disabled it */
                wbt_enable_default(q);
-               mutex_unlock(&q->sysfs_lock);
        }
  }

Does this patch cause sysfs_lock to be held around kobject_del(&e->kobj)? Since sysfs_lock is locked from inside elv_attr_show() and elv_attr_store(), does this mean that this patch reintroduces the lock inversion problem that was fixed recently?

Thanks,

Bart.

Reply via email to