mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: tip-bot for Baoquan He <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, torvalds@linux-foundation.org,
	bhe@redhat.com, hpa@zytor.com, mingo@kernel.org,
	ebiederm@xmission.com, tglx@linutronix.de, peterz@infradead.org
Subject: [tip:x86/apic] x86/apic: Set up through-local-APIC mode on the boot CPU if 'noapic' specified
Date: Sat, 17 Feb 2018 03:43:35 -0800	[thread overview]
Message-ID: <tip-bee3204ec3c49f6f53add9c3962c9012a5c036fa@git.kernel.org> (raw)
In-Reply-To: <20180214054656.3780-7-bhe@redhat.com>

Commit-ID:  bee3204ec3c49f6f53add9c3962c9012a5c036fa
Gitweb:     https://git.kernel.org/tip/bee3204ec3c49f6f53add9c3962c9012a5c036fa
Author:     Baoquan He <bhe@redhat.com>
AuthorDate: Wed, 14 Feb 2018 13:46:56 +0800
Committer:  Ingo Molnar <mingo@kernel.org>
CommitDate: Sat, 17 Feb 2018 11:47:46 +0100

x86/apic: Set up through-local-APIC mode on the boot CPU if 'noapic' specified

Currently the kdump kernel becomes very slow if 'noapic' is specified.
Normal kernel doesn't have this bug.

Kernel parameter 'noapic' is used to disable IO-APIC in system for
testing or special purpose. Here the root cause is that in kdump
kernel LAPIC is disabled since commit:

  522e664644 ("x86/apic: Disable I/O APIC before shutdown of the local APIC")

In this case we need set up through-local-APIC on boot CPU in
setup_local_APIC().

In normal kernel the legacy irq mode is enabled by the BIOS. If
it is virtual wire mode, the local-APIC has been enabled and set as
through-local-APIC.

Though we fixed the regression introduced by commit 522e664644,
to further improve robustness set up the through-local-APIC mode
explicitly, do not rely on the default boot IRQ mode.

Signed-off-by: Baoquan He <bhe@redhat.com>
Reviewed-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: douly.fnst@cn.fujitsu.com
Cc: joro@8bytes.org
Cc: prarit@redhat.com
Cc: uobergfe@redhat.com
Link: http://lkml.kernel.org/r/20180214054656.3780-7-bhe@redhat.com
[ Rewrote the changelog. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
 arch/x86/kernel/apic/apic.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
index 871018d..2ceac9f 100644
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -1570,7 +1570,7 @@ static void setup_local_APIC(void)
 	 * TODO: set up through-local-APIC from through-I/O-APIC? --macro
 	 */
 	value = apic_read(APIC_LVT0) & APIC_LVT_MASKED;
-	if (!cpu && (pic_mode || !value)) {
+	if (!cpu && (pic_mode || !value || skip_ioapic_setup)) {
 		value = APIC_DM_EXTINT;
 		apic_printk(APIC_VERBOSE, "enabled ExtINT on CPU#%d\n", cpu);
 	} else {

  reply	other threads:[~2018-02-17 11:44 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-14  5:46 [PATCH v5 0/6] x86/apic: Fix restoring boot irq mode in reboot and kexec/kdump Baoquan He
2018-02-14  5:46 ` [PATCH v5 1/6] x86/apic: Split out restore_boot_irq_mode from disable_IO_APIC Baoquan He
2018-02-17 11:41   ` [tip:x86/apic] x86/apic: Split out restore_boot_irq_mode() from disable_IO_APIC() tip-bot for Baoquan He
2018-02-14  5:46 ` [PATCH v5 2/6] x86/apic: Replace disable_IO_APIC for KEXEC_JUMP Baoquan He
2018-02-17 11:41   ` [tip:x86/apic] x86/apic: Split disable_IO_APIC() into two functions to fix CONFIG_KEXEC_JUMP=y tip-bot for Baoquan He
2018-02-14  5:46 ` [PATCH v5 3/6] x86/apic: Fix restoring boot irq mode in reboot and kexec/kdump Baoquan He
2018-02-17 11:42   ` [tip:x86/apic] x86/apic: Fix restoring boot IRQ " tip-bot for Baoquan He
2018-02-14  5:46 ` [PATCH v5 4/6] x86/apic: Remove useless disable_IO_APIC Baoquan He
2018-02-17 11:42   ` [tip:x86/apic] x86/apic: Remove the (now) unused disable_IO_APIC() function tip-bot for Baoquan He
2018-02-14  5:46 ` [PATCH v5 5/6] x86/apic: Rename variable/function related to x86_io_apic_ops Baoquan He
2018-02-17 11:43   ` [tip:x86/apic] x86/apic: Rename variables and functions " tip-bot for Baoquan He
2018-02-14  5:46 ` [PATCH v5 6/6] x86/apic: Set up through-local-APIC on boot CPU if 'noapic' specified Baoquan He
2018-02-17 11:43   ` tip-bot for Baoquan He [this message]
2018-02-16  9:38 ` [PATCH v5 0/6] x86/apic: Fix restoring boot irq mode in reboot and kexec/kdump Ingo Molnar
2018-02-16 10:24   ` Baoquan He
2018-02-17 10:46     ` Ingo Molnar
2018-02-17 11:28       ` Baoquan He
2018-02-16 19:16   ` Eric W. Biederman
2018-02-17 10:17     ` Ingo Molnar

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=tip-bee3204ec3c49f6f53add9c3962c9012a5c036fa@git.kernel.org \
    --to=tipbot@zytor.com \
    --cc=bhe@redhat.com \
    --cc=ebiederm@xmission.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.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

Powered by JetHome