From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751233AbcFJFSg (ORCPT ); Fri, 10 Jun 2016 01:18:36 -0400 Received: from ozlabs.org ([103.22.144.67]:35085 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750710AbcFJFSg (ORCPT ); Fri, 10 Jun 2016 01:18:36 -0400 In-Reply-To: <146399210850.26372.5857516772891352049.stgit@bahia.huguette.org> To: Greg Kurz From: Michael Ellerman Cc: Michael Roth , linux-kernel@vger.kernel.org, qemu-ppc@nongnu.org, Paul Mackerras , linuxppc-dev@lists.ozlabs.org, David Gibson Subject: Re: powerpc/pseries: start rtasd before PCI probing Message-Id: <3rQr6w4ck4z9sBf@ozlabs.org> Date: Fri, 10 Jun 2016 15:18:32 +1000 (AEST) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2016-23-05 at 08:28:28 UTC, Greg Kurz wrote: > 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 > Tested-by: Thomas Huth Has this been tested on PowerVM ? cheers