mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Dmytro Maluka <dmaluka@chromium.org>
To: Thomas Gleixner <tglx@linutronix.de>, Rob Herring <robh@kernel.org>
Cc: "Ingo Molnar" <mingo@redhat.com>,
	"Borislav Petkov" <bp@alien8.de>,
	"Dave Hansen" <dave.hansen@linux.intel.com>,
	x86@kernel.org (maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)),
	"H. Peter Anvin" <hpa@zytor.com>,
	"Saravana Kannan" <saravanak@google.com>,
	"Saurabh Sengar" <ssengar@linux.microsoft.com>,
	"Usama Arif" <usamaarif642@gmail.com>,
	"Stephen Boyd" <sboyd@kernel.org>,
	"Frank Rowand" <frowand.list@gmail.com>,
	linux-kernel@vger.kernel.org (open list:X86 ARCHITECTURE (32-BIT
	AND 64-BIT)),
	devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND
	FLATTENED DEVICE TREE), "Pierre-Clément Tosi" <ptosi@google.com>,
	"Shikha Panwar" <shikhapanwar@google.com>,
	"Will Deacon" <will@kernel.org>, "Keir Fraser" <keirf@google.com>,
	"Michal Mazurek" <mazurekm@google.com>,
	"Bartłomiej Grzesik" <bgrzesik@google.com>,
	"Tomasz Nowicki" <tnowicki@google.com>,
	"Grzegorz Jaszczyk" <jaszczyk@google.com>,
	"Dmytro Maluka" <dmaluka@chromium.org>
Subject: [PATCH 1/2] x86/of: Don't use DTB for SMP setup if ACPI is enabled
Date: Sun,  5 Jan 2025 17:16:42 +0000	[thread overview]
Message-ID: <20250105171643.3473702-2-dmaluka@chromium.org> (raw)
In-Reply-To: <20250105171643.3473702-1-dmaluka@chromium.org>

There are cases when it is useful to use both ACPI and DTB provided by
the bootloader, however in such cases we should make sure to prevent
conflicts between the two. Namely, don't try to use DTB for SMP setup
if ACPI is enabled.

Precisely, this prevents at least:

- incorrectly calling register_lapic_address(APIC_DEFAULT_PHYS_BASE)
  after the LAPIC was already successfully enumerated via ACPI, causing
  noisy kernel warnings and probably potential real issues as well

- failed IOAPIC setup in the case when IOAPIC is enumerated via mptable
  instead of ACPI (e.g. with acpi=noirq), due to
  mpparse_parse_smp_config() overridden by x86_dtb_parse_smp_config()

Signed-off-by: Dmytro Maluka <dmaluka@chromium.org>
---
 arch/x86/kernel/devicetree.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/x86/kernel/devicetree.c b/arch/x86/kernel/devicetree.c
index 59d23cdf4ed0..dd8748c45529 100644
--- a/arch/x86/kernel/devicetree.c
+++ b/arch/x86/kernel/devicetree.c
@@ -2,6 +2,7 @@
 /*
  * Architecture specific OF callbacks.
  */
+#include <linux/acpi.h>
 #include <linux/export.h>
 #include <linux/io.h>
 #include <linux/interrupt.h>
@@ -313,6 +314,6 @@ void __init x86_flattree_get_config(void)
 	if (initial_dtb)
 		early_memunmap(dt, map_len);
 #endif
-	if (of_have_populated_dt())
+	if (acpi_disabled && of_have_populated_dt())
 		x86_init.mpparse.parse_smp_cfg = x86_dtb_parse_smp_config;
 }
-- 
2.47.1.613.gc27f4b7a9f-goog


  reply	other threads:[~2025-01-05 17:17 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-05 17:16 [PATCH 0/2] of, x86: Restore possibility to use both ACPI and FDT from bootloader Dmytro Maluka
2025-01-05 17:16 ` Dmytro Maluka [this message]
2025-01-05 17:16 ` [PATCH 2/2] of/fdt: " Dmytro Maluka
2025-01-05 17:31 ` [PATCH 0/2] of, x86: " Dmytro Maluka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250105171643.3473702-2-dmaluka@chromium.org \
    --to=dmaluka@chromium.org \
    --cc=bgrzesik@google.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@linux.intel.com \
    --cc=devicetree@vger.kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=hpa@zytor.com \
    --cc=jaszczyk@google.com \
    --cc=keirf@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mazurekm@google.com \
    --cc=mingo@redhat.com \
    --cc=ptosi@google.com \
    --cc=robh@kernel.org \
    --cc=saravanak@google.com \
    --cc=sboyd@kernel.org \
    --cc=shikhapanwar@google.com \
    --cc=ssengar@linux.microsoft.com \
    --cc=tglx@linutronix.de \
    --cc=tnowicki@google.com \
    --cc=usamaarif642@gmail.com \
    --cc=will@kernel.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®