diff options
author | Greg Kurz <gkurz@linux.vnet.ibm.com> | 2016-06-15 22:26:41 +0200 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2016-07-08 19:22:15 +1000 |
commit | 8c6a0a1f4041f19559538649e0b9f3d9224b03a8 (patch) | |
tree | 9b0647f3194095df36bbc1abbc12b0e1d1731456 /arch/powerpc/configs | |
parent | 63a72284b159c569ec52f380c9a8dd9342d43bb8 (diff) | |
download | linux-8c6a0a1f4041f19559538649e0b9f3d9224b03a8.tar.gz linux-8c6a0a1f4041f19559538649e0b9f3d9224b03a8.tar.bz2 linux-8c6a0a1f4041f19559538649e0b9f3d9224b03a8.zip |
powerpc/pseries: start rtasd before PCI probing
A strange behaviour is observed when comparing PCI hotplug in QEMU, between
x86 and pseries. If you consider the following steps:
- start a VM
- add a PCI device via the QEMU monitor before the rtasd has started (for
example starting the VM in paused state, or hotplug during FW or boot
loader)
- resume the VM execution
The x86 kernel detects the PCI device, but the pseries one does not.
This happens because the rtasd kernel worker is currently started under
device_initcall, while PCI probing happens earlier under subsys_initcall.
As a consequence, if we have a pending RTAS event at boot time, a message
is printed and the event is dropped.
This patch moves all the initialization of rtasd to arch_initcall, which is
run before subsys_call: this way, logging_enabled is true when the RTAS
event pops up and it is not lost anymore.
The proc fs bits stay at device_initcall because they cannot be run before
fs_initcall.
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/configs')
0 files changed, 0 insertions, 0 deletions