2007-12-12 04:10:47

by Yinghai Lu

[permalink] [raw]
Subject: [PATCH] pci: don't load acpi_php when acpi is disabled

[PATCH] pci: don't load acpi_php when acpi is disabled

when acpi=off and pci=nomsi, don't load acpiphp

Signed-off-by: Yinghai Lu <[email protected]>

diff --git a/drivers/pci/hotplug/acpiphp_core.c b/drivers/pci/hotplug/acpiphp_core.c
index c8c2638..84d66ba 100644
--- a/drivers/pci/hotplug/acpiphp_core.c
+++ b/drivers/pci/hotplug/acpiphp_core.c
@@ -392,6 +392,9 @@ static int __init acpiphp_init(void)
{
info(DRIVER_DESC " version: " DRIVER_VERSION "\n");

+ if (acpi_pci_disabled)
+ return 0;
+
acpiphp_debug = debug;

/* read all the ACPI info from the system */
@@ -401,6 +404,9 @@ static int __init acpiphp_init(void)

static void __exit acpiphp_exit(void)
{
+ if (acpi_pci_disabled)
+ return 0;
+
/* deallocate internal data structures etc. */
acpiphp_glue_exit();
}


2007-12-12 04:46:31

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] pci: don't load acpi_php when acpi is disabled

On Tue, 11 Dec 2007 20:14:40 -0800 Yinghai Lu <[email protected]> wrote:

> [PATCH] pci: don't load acpi_php when acpi is disabled
>
> when acpi=off and pci=nomsi, don't load acpiphp
>
> Signed-off-by: Yinghai Lu <[email protected]>
>
> diff --git a/drivers/pci/hotplug/acpiphp_core.c b/drivers/pci/hotplug/acpiphp_core.c
> index c8c2638..84d66ba 100644
> --- a/drivers/pci/hotplug/acpiphp_core.c
> +++ b/drivers/pci/hotplug/acpiphp_core.c
> @@ -392,6 +392,9 @@ static int __init acpiphp_init(void)
> {
> info(DRIVER_DESC " version: " DRIVER_VERSION "\n");
>
> + if (acpi_pci_disabled)
> + return 0;
> +
> acpiphp_debug = debug;
>
> /* read all the ACPI info from the system */
> @@ -401,6 +404,9 @@ static int __init acpiphp_init(void)
>
> static void __exit acpiphp_exit(void)
> {
> + if (acpi_pci_disabled)
> + return 0;
> +
> /* deallocate internal data structures etc. */
> acpiphp_glue_exit();
> }

OK, but there is some information missing in your patch descriptions: what
effect do these patches have? Does the kernel crash without them? Or is
there no effect at all? Or something in between?

Thanks.

2007-12-12 05:49:41

by Yinghai Lu

[permalink] [raw]
Subject: Re: [PATCH] pci: don't load acpi_php when acpi is disabled

On Dec 11, 2007 8:46 PM, Andrew Morton <[email protected]> wrote:
> On Tue, 11 Dec 2007 20:14:40 -0800 Yinghai Lu <[email protected]> wrote:
>
> > [PATCH] pci: don't load acpi_php when acpi is disabled
> >
> > when acpi=off and pci=nomsi, don't load acpiphp
> >
> > Signed-off-by: Yinghai Lu <[email protected]>
> >
> > diff --git a/drivers/pci/hotplug/acpiphp_core.c b/drivers/pci/hotplug/acpiphp_core.c
> > index c8c2638..84d66ba 100644
> > --- a/drivers/pci/hotplug/acpiphp_core.c
> > +++ b/drivers/pci/hotplug/acpiphp_core.c
> > @@ -392,6 +392,9 @@ static int __init acpiphp_init(void)
> > {
> > info(DRIVER_DESC " version: " DRIVER_VERSION "\n");
> >
> > + if (acpi_pci_disabled)
> > + return 0;
> > +
> > acpiphp_debug = debug;
> >
> > /* read all the ACPI info from the system */
> > @@ -401,6 +404,9 @@ static int __init acpiphp_init(void)
> >
> > static void __exit acpiphp_exit(void)
> > {
> > + if (acpi_pci_disabled)
> > + return 0;
> > +
> > /* deallocate internal data structures etc. */
> > acpiphp_glue_exit();
> > }
>
> OK, but there is some information missing in your patch descriptions: what
> effect do these patches have? Does the kernel crash without them? Or is
> there no effect at all? Or something in between?

warning when use acpi=off to disable acpi in kernel

AER service couldn't init device 0000:00:0a.0:pcie01 - no _OSC support
AER service couldn't init device 0000:00:0e.0:pcie01 - no _OSC support
AER service couldn't init device 0000:00:0f.0:pcie01 - no _OSC support
AER service couldn't init device 0000:80:0b.0:pcie01 - no _OSC support
AER service couldn't init device 0000:80:0e.0:pcie01 - no _OSC support
AER service couldn't init device 0000:80:0f.0:pcie01 - no _OSC support

pci_hotplug: PCI Hot Plug PCI Core version: 0.5
acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
ACPI Exception (utmutex-0263): AE_BAD_PARAMETER, Thread
FFFF81103CC54000 could not acquire Mutex [1] [20070126]

Thanks

Yinghai Lu