Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1480655 > unrolled thread

[PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device

Started byRui Wang <rui.y.wang@intel.com>
First post2016-09-10 18:00 +0200
Last post2016-09-12 23:50 +0200
Articles 6 — 5 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device Rui Wang <rui.y.wang@intel.com> - 2016-09-10 18:00 +0200
    Re: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI  device Borislav Petkov <bp@alien8.de> - 2016-09-10 19:40 +0200
    [tip:x86/apic] x86/ioapic: Ignore root bridges without a companion  ACPI device tip-bot for Rui Wang <tipbot@zytor.com> - 2016-09-10 20:50 +0200
    Re: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI  device Jon Derrick <jonathan.derrick@intel.com> - 2016-09-12 23:30 +0200
      Re: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI  device Jon Derrick <jonathan.derrick@intel.com> - 2016-09-12 23:50 +0200
      RE: [PATCH] x86/ioapic: Ignore root bridges without a companion  ACPI device "Luck, Tony" <tony.luck@intel.com> - 2016-09-12 23:50 +0200

#1480655 — [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device

FromRui Wang <rui.y.wang@intel.com>
Date2016-09-10 18:00 +0200
Subject[PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device
Message-ID<sfSRc-252-7@gated-at.bofh.it>
Some PCI root bridges don't have a corresponding ACPI device.
This can be the case on some old platforms. Don't call acpi_ioapic_add()
on these bridges because they can't support ioapic hotplug.

v2: Per Boris's review, removed the unnecessary local var; refined comment

Signed-off-by: Rui Wang <rui.y.wang@intel.com>
Reviewed-by: Borislav Petkov <bp@alien8.de>
---
 drivers/pci/setup-bus.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
index ec538d3..8b4e231 100644
--- a/drivers/pci/setup-bus.c
+++ b/drivers/pci/setup-bus.c
@@ -1855,7 +1855,10 @@ void __init pci_assign_unassigned_resources(void)
 
 	list_for_each_entry(root_bus, &pci_root_buses, node) {
 		pci_assign_unassigned_root_bus_resources(root_bus);
-		acpi_ioapic_add(ACPI_HANDLE(root_bus->bridge));
+
+		/* make sure the root bridge has a companion ACPI device */
+		if (ACPI_HANDLE(root_bus->bridge))
+			acpi_ioapic_add(ACPI_HANDLE(root_bus->bridge));
 	}
 }
 
-- 
1.8.3.1

[toc] | [next] | [standalone]


#1480680 — Re: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device

FromBorislav Petkov <bp@alien8.de>
Date2016-09-10 19:40 +0200
SubjectRe: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device
Message-ID<sfUpX-39r-5@gated-at.bofh.it>
In reply to#1480655
On Sat, Sep 10, 2016 at 11:40:45PM +0800, Rui Wang wrote:
> Some PCI root bridges don't have a corresponding ACPI device.
> This can be the case on some old platforms. Don't call acpi_ioapic_add()
> on these bridges because they can't support ioapic hotplug.
> 
> v2: Per Boris's review, removed the unnecessary local var; refined comment
> 
> Signed-off-by: Rui Wang <rui.y.wang@intel.com>
> Reviewed-by: Borislav Petkov <bp@alien8.de>
>
> ---
>  drivers/pci/setup-bus.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
> index ec538d3..8b4e231 100644
> --- a/drivers/pci/setup-bus.c
> +++ b/drivers/pci/setup-bus.c
> @@ -1855,7 +1855,10 @@ void __init pci_assign_unassigned_resources(void)
>  
>  	list_for_each_entry(root_bus, &pci_root_buses, node) {
>  		pci_assign_unassigned_root_bus_resources(root_bus);
> -		acpi_ioapic_add(ACPI_HANDLE(root_bus->bridge));
> +
> +		/* make sure the root bridge has a companion ACPI device */
> +		if (ACPI_HANDLE(root_bus->bridge))
> +			acpi_ioapic_add(ACPI_HANDLE(root_bus->bridge));

Reported-and-tested-by: Borislav Petkov <bp@suse.de>

Thanks Rui!

-- 
Regards/Gruss,
    Boris.

ECO tip #101: Trim your mails when you reply.

[toc] | [prev] | [next] | [standalone]


#1480693 — [tip:x86/apic] x86/ioapic: Ignore root bridges without a companion ACPI device

Fromtip-bot for Rui Wang <tipbot@zytor.com>
Date2016-09-10 20:50 +0200
Subject[tip:x86/apic] x86/ioapic: Ignore root bridges without a companion ACPI device
Message-ID<sfVvH-3PH-3@gated-at.bofh.it>
In reply to#1480655
Commit-ID:  d9c149d6ce1a94de578a4e323f6881fcb6b986ab
Gitweb:     http://git.kernel.org/tip/d9c149d6ce1a94de578a4e323f6881fcb6b986ab
Author:     Rui Wang <rui.y.wang@intel.com>
AuthorDate: Sat, 10 Sep 2016 23:40:45 +0800
Committer:  Ingo Molnar <mingo@kernel.org>
CommitDate: Sat, 10 Sep 2016 20:30:31 +0200

x86/ioapic: Ignore root bridges without a companion ACPI device

Some PCI root bridges don't have a corresponding ACPI device.
This can be the case on some old platforms. Don't call acpi_ioapic_add()
on these bridges because they can't support ioapic hotplug.

Reported-and-tested-by: Borislav Petkov <bp@suse.de>
Signed-off-by: Rui Wang <rui.y.wang@intel.com>
Reviewed-by: Borislav Petkov <bp@alien8.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: bhelgaas@google.com
Cc: helgaas@kernel.org
Cc: linux-acpi@vger.kernel.org
Cc: linux-pci@vger.kernel.org
Cc: rjw@rjwysocki.net
Cc: tony.luck@intel.com
Link: http://lkml.kernel.org/r/1473522046-31329-1-git-send-email-rui.y.wang@intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
 drivers/pci/setup-bus.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
index ec538d3..f30ca75 100644
--- a/drivers/pci/setup-bus.c
+++ b/drivers/pci/setup-bus.c
@@ -1855,7 +1855,10 @@ void __init pci_assign_unassigned_resources(void)
 
 	list_for_each_entry(root_bus, &pci_root_buses, node) {
 		pci_assign_unassigned_root_bus_resources(root_bus);
-		acpi_ioapic_add(ACPI_HANDLE(root_bus->bridge));
+
+		/* Make sure the root bridge has a companion ACPI device: */
+		if (ACPI_HANDLE(root_bus->bridge))
+			acpi_ioapic_add(ACPI_HANDLE(root_bus->bridge));
 	}
 }
 

[toc] | [prev] | [next] | [standalone]


#1481987 — Re: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device

FromJon Derrick <jonathan.derrick@intel.com>
Date2016-09-12 23:30 +0200
SubjectRe: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device
Message-ID<sgGXD-C4-1@gated-at.bofh.it>
In reply to#1480655
On Sat, Sep 10, 2016 at 11:40:45PM +0800, Rui Wang wrote:
> Some PCI root bridges don't have a corresponding ACPI device.
> This can be the case on some old platforms. Don't call acpi_ioapic_add()
> on these bridges because they can't support ioapic hotplug.
Not just old platforms. VMD is a new device which initializes a root port in software without an acpi handle.

What branch is this based on? I can't find the relevant code/commits

[toc] | [prev] | [next] | [standalone]


#1482000 — Re: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device

FromJon Derrick <jonathan.derrick@intel.com>
Date2016-09-12 23:50 +0200
SubjectRe: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device
Message-ID<sgHh0-K3-7@gated-at.bofh.it>
In reply to#1481987
On Mon, Sep 12, 2016 at 03:43:23PM -0600, Luck, Tony wrote:
> > What branch is this based on? I can't find the relevant code/commits
> 
> tip tree. branch x86/apic
> 
> -Tony

Cheers!

[toc] | [prev] | [next] | [standalone]


#1482003 — RE: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device

From"Luck, Tony" <tony.luck@intel.com>
Date2016-09-12 23:50 +0200
SubjectRE: [PATCH] x86/ioapic: Ignore root bridges without a companion ACPI device
Message-ID<sgHh0-K3-9@gated-at.bofh.it>
In reply to#1481987
> What branch is this based on? I can't find the relevant code/commits

tip tree. branch x86/apic

-Tony

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web