diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-09-25 10:56:57 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-09-25 11:01:20 +0200 |
commit | e11daafdbf5b683a5da33a080862769b696b1621 (patch) | |
tree | 53869480de09eb3f5129c23bf9fa9ef023863f04 /drivers/base | |
parent | 4f2c346e621624315e2a1405e98616a0c5ac146f (diff) |
Revert "driver core: fix async device shutdown hang"
This reverts commit 4f2c346e621624315e2a1405e98616a0c5ac146f.
The series is being reverted before -rc1 as there are still reports of
lockups on shutdown, so it's not quite ready for "prime time."
Reported-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>
Link: https://lore.kernel.org/r/ZvMkkhyJrohaajuk@skv.local
Cc: Christoph Hellwig <hch@lst.de>
Cc: David Jeffery <djeffery@redhat.com>
Cc: Keith Busch <kbusch@kernel.org>
Cc: Laurence Oberman <loberman@redhat.com>
Cc: Nathan Chancellor <nathan@kernel.org>
Cc: Sagi Grimberg <sagi@grimberg.me>
Cc: Stuart Hayes <stuart.w.hayes@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/base')
-rw-r--r-- | drivers/base/core.c | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c index 76513e360496..b69b82da8837 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c @@ -4898,16 +4898,8 @@ void device_shutdown(void) idx = device_links_read_lock(); list_for_each_entry_rcu(link, &dev->links.suppliers, c_node, - device_links_read_lock_held()) { - /* - * sync_state_only suppliers don't need to wait, - * aren't reordered on devices_kset, so making them - * wait could result in a hang - */ - if (device_link_flag_is_sync_state_only(link->flags)) - continue; + device_links_read_lock_held()) link->supplier->p->shutdown_after = cookie; - } device_links_read_unlock(idx); put_device(dev); |