]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ata: libata-eh: queue hotplug work on the system_dfl_long_wq workqueue
authorNiklas Cassel <cassel@kernel.org>
Wed, 13 May 2026 08:10:01 +0000 (10:10 +0200)
committerNiklas Cassel <cassel@kernel.org>
Mon, 1 Jun 2026 17:07:37 +0000 (19:07 +0200)
commit28afe01eb75cf8e858b9eecebb0e2e7ee0ceb236
treee86a7f4e5f30f0927ef596a1aa34385ac275f511
parent5e46e031fe28d931c93c45ac971a80ff124d996b
ata: libata-eh: queue hotplug work on the system_dfl_long_wq workqueue

ata_scsi_port_error_handler() uses schedule_delayed_work() to queue
the ap->hotplug_task work.

schedule_delayed_work() always uses the system_percpu_wq per-cpu
workqueue.

ata_scsi_scan_host() queues the ap->hotplug_task work on the unbound
system_dfl_long_wq workqueue.

It seems counter-intuitive to queue the same work on two different
workqueues. Thus, change ata_scsi_port_error_handler() to also queue
the ap->hotplug_task work on the system_dfl_long_wq workqueue, such
that the work is always queued on the same workqueue.

Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
Signed-off-by: Niklas Cassel <cassel@kernel.org>
drivers/ata/libata-eh.c