From: tip-bot for Thomas Gleixner <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: hpa@zytor.com, tglx@linutronix.de, joro@8bytes.org, bp@alien8.de,
jiang.liu@linux.intel.com, linux-kernel@vger.kernel.org,
mingo@kernel.org
Subject: [tip:x86/apic] x86, smpboot: Remove pointless preempt_disable() in native_smp_prepare_cpus()
Date: Fri, 19 Dec 2014 06:02:29 -0800 [thread overview]
Message-ID: <tip-250a1ac685f147d4f4b2f132cfaffcce1a6792c1@git.kernel.org> (raw)
In-Reply-To: <20141205084147.153643952@linutronix.de>
Commit-ID: 250a1ac685f147d4f4b2f132cfaffcce1a6792c1
Gitweb: http://git.kernel.org/tip/250a1ac685f147d4f4b2f132cfaffcce1a6792c1
Author: Thomas Gleixner <tglx@linutronix.de>
AuthorDate: Fri, 5 Dec 2014 08:48:29 +0000
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitDate: Tue, 16 Dec 2014 14:08:14 +0100
x86, smpboot: Remove pointless preempt_disable() in native_smp_prepare_cpus()
There is no reason to keep preemption disabled in this function.
We only have two other threads live: kthreadd and idle. Neither of
them is going to preempt. But that preempt_disable forces all the code
inside to do GFP_ATOMIC allocations which is just insane.
Remove it.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Borislav Petkov <bp@alien8.de>
Cc: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Joerg Roedel <joro@8bytes.org>
Cc: x86@kernel.org
Link: http://lkml.kernel.org/r/20141205084147.153643952@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
arch/x86/kernel/smpboot.c | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
index 7a8f584..6d7022c 100644
--- a/arch/x86/kernel/smpboot.c
+++ b/arch/x86/kernel/smpboot.c
@@ -1084,7 +1084,6 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
{
unsigned int i;
- preempt_disable();
smp_cpu_index_default();
/*
@@ -1102,22 +1101,19 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
}
set_cpu_sibling_map(0);
-
if (smp_sanity_check(max_cpus) < 0) {
pr_info("SMP disabled\n");
disable_smp();
- goto out;
+ return;
}
default_setup_apic_routing();
- preempt_disable();
if (read_apic_id() != boot_cpu_physical_apicid) {
panic("Boot APIC ID in local APIC unexpected (%d vs %d)",
read_apic_id(), boot_cpu_physical_apicid);
/* Or can we switch back to PIC here? */
}
- preempt_enable();
connect_bsp_APIC();
@@ -1151,8 +1147,6 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
uv_system_init();
set_mtrr_aps_delayed_init();
-out:
- preempt_enable();
}
void arch_enable_nonboot_cpus_begin(void)
next prev parent reply other threads:[~2014-12-19 14:02 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-05 8:48 [patch 0/5] x86/iommu: Bootup stage cleanups Thomas Gleixner
2014-12-05 8:48 ` [patch 1/5] x86, smpboot: Remove pointless preempt_disable() in native_smp_prepare_cpus() Thomas Gleixner
2014-12-05 23:25 ` [tip:x86/apic] " tip-bot for Thomas Gleixner
2014-12-19 14:02 ` tip-bot for Thomas Gleixner [this message]
2014-12-05 8:48 ` [patch 2/5] iommu, x86: Restructure setup of the irq remapping feature Thomas Gleixner
2014-12-05 23:25 ` [tip:x86/apic] " tip-bot for Thomas Gleixner
2014-12-05 8:48 ` [patch 3/5] iommu/vt-d: Move iommu preparatory allocations to irq_remap_ops.prepare Thomas Gleixner
2014-12-05 23:26 ` [tip:x86/apic] " tip-bot for Thomas Gleixner
2014-12-11 7:35 ` Yinghai Lu
2014-12-11 14:33 ` Jiang Liu
2014-12-11 17:57 ` Yinghai Lu
2014-12-11 20:30 ` Thomas Gleixner
2014-12-12 2:04 ` Yinghai Lu
2015-04-27 22:46 ` Yinghai Lu
2015-04-29 8:15 ` Jiang Liu
2014-12-05 8:48 ` [patch 4/5] irqdomain: Revert gfp hackery Thomas Gleixner
2014-12-05 23:26 ` [tip:x86/apic] " tip-bot for Thomas Gleixner
2014-12-05 8:48 ` [patch 5/5] iommu/vt-d: Convert allocations to GFP_KERNEL Thomas Gleixner
2014-12-05 23:26 ` [tip:x86/apic] " tip-bot for Thomas Gleixner
2014-12-05 12:22 ` [patch 0/5] x86/iommu: Bootup stage cleanups Joerg Roedel
-- strict thread matches above, loose matches on Subject: below --
2015-01-07 7:31 [Patch v2 00/16] Refine IR initialization flow and fixes bugs related to X2APIC Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-07 7:31 ` [Patch v2 01/16] iommu, x86: Restructure setup of the irq remapping feature Jiang Liu
2015-01-15 12:58 ` [tip:x86/apic] " tip-bot for Thomas Gleixner
[not found] ` <1420615903-28253-1-git-send-email-jiang.liu-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2015-01-07 7:31 ` [Patch v2 02/16] iommu/vt-d: Move iommu preparatory allocations to irq_remap_ops.prepare Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 12:58 ` [tip:x86/apic] " tip-bot for Thomas Gleixner
2015-01-07 7:31 ` [Patch v2 03/16] iommu/vt-d: Convert allocations to GFP_KERNEL Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 12:59 ` [tip:x86/apic] " tip-bot for Thomas Gleixner
2015-01-07 7:31 ` [Patch v2 04/16] x86/apic: Panic if kernel doesn't support x2apic but BIOS has enabled x2apic Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 12:59 ` [tip:x86/apic] x86/apic: Panic if kernel doesn' t " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 05/16] x86/apic: Kill useless variable x2apic_enabled in function enable_IR_x2apic() Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 12:59 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 06/16] x86/apic: Correctly detect X2APIC status in function enable_IR() Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 13:00 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 07/16] x86/apic: Refine enable_IR_x2apic() and related functions Jiang Liu
2015-01-07 7:31 ` Jiang Liu
[not found] ` <1420615903-28253-8-git-send-email-jiang.liu-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2015-01-15 9:24 ` Thomas Gleixner
2015-01-15 9:24 ` Thomas Gleixner
2015-01-15 13:00 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-15 13:00 ` [tip:x86/apic] x86/apic: Handle XAPIC remap mode proper tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 08/16] iommu/vt-d: Prepare for killing function irq_remapping_supported() Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 13:01 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 09/16] iommu/vt-d: Allocate IRQ remapping data structures only for all IOMMUs Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 13:01 ` [tip:x86/apic] " tip-bot for Joerg Roedel
2015-01-07 7:31 ` [Patch v2 10/16] iommu/vt-d: Allow IR works in XAPIC mode though CPU works in X2APIC mode Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 13:01 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 11/16] x86/apic: Only disable CPU x2apic mode when necessary Jiang Liu
2015-01-07 7:31 ` Jiang Liu
2015-01-15 13:02 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 12/16] iommu/amd: Check for irq-remap support amd_iommu_prepare() Jiang Liu
2015-01-15 13:02 ` [tip:x86/apic] " tip-bot for Joerg Roedel
2015-01-07 7:31 ` [Patch v2 13/16] iommu/irq_remapping: Kill function irq_remapping_supported() and related code Jiang Liu
2015-01-15 13:02 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 14/16] iommu/irq_remapping: Refine function irq_remapping_prepare() for maintenance Jiang Liu
2015-01-15 13:03 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 15/16] iommu/irq_remapping: Change variable disable_irq_remap to be static Jiang Liu
2015-01-15 13:03 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-07 7:31 ` [Patch v2 16/16] iommu/irq_remapping: Normailize the way to detect whether IR is enabled Jiang Liu
2015-01-15 13:03 ` [tip:x86/apic] " tip-bot for Jiang Liu
2015-01-09 12:03 ` [Patch v2 00/16] Refine IR initialization flow and fixes bugs related to X2APIC Joerg Roedel
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-250a1ac685f147d4f4b2f132cfaffcce1a6792c1@git.kernel.org \
--to=tipbot@zytor.com \
--cc=bp@alien8.de \
--cc=hpa@zytor.com \
--cc=jiang.liu@linux.intel.com \
--cc=joro@8bytes.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.