Messages in this thread | | | Date | Tue, 23 Oct 2012 10:36:12 -0700 | Subject | Re: [PATCH 1/2] Use kacpi_hotplug_wq to handle container hotplug event. | From | Yinghai Lu <> |
| |
On Tue, Oct 23, 2012 at 6:10 AM, Tang Chen <tangchen@cn.fujitsu.com> wrote: > As the comments in __acpi_os_execute() said: > > We can't run hotplug code in keventd_wq/kacpid_wq/kacpid_notify_wq > because the hotplug code may call driver .remove() functions, > which invoke flush_scheduled_work/acpi_os_wait_events_complete > to flush these workqueues. > > we should keep the hotplug code in kacpi_hotplug_wq. > > But we have the following call series in kernel now: > acpi_ev_queue_notify_request() > |--> acpi_os_execute() > |--> __acpi_os_execute(type, function, context, 0) > > The last parameter 0 makes the container_notify_cb() executed in > kacpi_notify_wq or kacpid_wq. So, we need to put the real hotplug code > into kacpi_hotplug_wq.
I had other patches that merge acpi_hp_work in acpiphp and pci_root_hp.
I just put them in to for-pci-split-pci-root-hp-2.
can you check them to see if you can use it?
Thanks
Yinghai
| |