From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751812Ab1KLFnv (ORCPT ); Sat, 12 Nov 2011 00:43:51 -0500 Received: from mga03.intel.com ([143.182.124.21]:20172 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751051Ab1KLFnt (ORCPT ); Sat, 12 Nov 2011 00:43:49 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.69,498,1315206000"; d="scan'208";a="73897213" From: "Fenghua Yu" To: "Thomas Gleixner" , "H Peter Anvin" , "Ingo Molnar" , "Linus Torvalds" , "Andrew Morton" , "Tony Luck" , "Arjan van de Ven" , "Suresh B Siddha" , "Len Brown" , "Randy Dunlap" , "Srivatsa S. Bhat" , Konrad Rzeszutek Wilk , Peter Zijlstra Cc: "linux-kernel" , "linux-pm" , "x86" , "Fenghua Yu" Subject: [PATCH v4 0/7] x86: BSP or CPU0 online/offline Date: Fri, 11 Nov 2011 21:26:25 -0800 Message-Id: <1321075592-31600-1-git-send-email-fenghua.yu@intel.com> X-Mailer: git-send-email 1.7.2 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Fenghua Yu BSP or CPU0 has been the last obstacle to CPU hotplug on x86. This patch set implements BSP online and offline and removes this obstacle to CPU hotplug. RAS needs the feature. If socket0 needs to be hotplugged for any reason (any thread on socket0 is bad, shared cache issue, uncore issue, etc), CPU0 is required to be offline or hot replaced to keep the system run. v4: Add __read_mostly for bsp_hotpluggable variable. Add my email address in cpu-hotplug.txt document. A wording change in comment. v3: Register a pm notifier to check if CPU0 is online before hibernate/suspend. Small wording changes in document and print info. v2: Add locking changes between cpu hotplug and hibernate/suspend. Change PIC irq bound to CPU0 detection. Fenghua Yu (7): x86/topology.c: Support functions for BSP online/offline x86/common.c: Init BSP data during BSP online x86/mtrr/main.c: Ask the first online CPU to save mtrr x86/smpboot.c: Don't offline BSP if any irq can not be migrated out of it Documentations/cpu-hotplug.tx, kernel-parameters.txt: Add x86 CPU0 online/offline feature x86/i387.c: Thread xstate is initialized only on BSP once x86/power/cpu.c: Don't hibernate/suspend if CPU0 is offline Documentation/cpu-hotplug.txt | 19 +++++++++++++++ Documentation/kernel-parameters.txt | 13 ++++++++++ arch/x86/include/asm/processor.h | 1 + arch/x86/kernel/cpu/common.c | 13 ++++++++-- arch/x86/kernel/cpu/mtrr/main.c | 9 +++++- arch/x86/kernel/i387.c | 9 ++++++- arch/x86/kernel/smpboot.c | 43 ++++++++++++++++++++++++++++----- arch/x86/kernel/topology.c | 24 +++++++++++++----- arch/x86/power/cpu.c | 44 +++++++++++++++++++++++++++++++++++ 9 files changed, 155 insertions(+), 20 deletions(-)