summaryrefslogtreecommitdiffstats
path: root/drivers/acpi
diff options
context:
space:
mode:
authorWen Congyang2013-02-23 01:33:29 +0100
committerLinus Torvalds2013-02-24 02:50:13 +0100
commit76bba1423f6313ccf7bd7cd400f1f2049bbc740a (patch)
tree957d8fd523cf0340e2a9c11ac21c4d3f86b7e3b1 /drivers/acpi
parentmemory-hotplug: export the function try_offline_node() (diff)
downloadkernel-qcow2-linux-76bba1423f6313ccf7bd7cd400f1f2049bbc740a.tar.gz
kernel-qcow2-linux-76bba1423f6313ccf7bd7cd400f1f2049bbc740a.tar.xz
kernel-qcow2-linux-76bba1423f6313ccf7bd7cd400f1f2049bbc740a.zip
cpu-hotplug, memory-hotplug: try offlining the node when hotremoving a cpu
The node will be offlined when all memory/cpu on the node is hotremoved. So we should try offline the node when hotremoving a cpu on the node. Signed-off-by: Wen Congyang <wency@cn.fujitsu.com> Signed-off-by: Tang Chen <tangchen@cn.fujitsu.com> Cc: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com> Cc: David Rientjes <rientjes@google.com> Cc: Jiang Liu <liuj97@gmail.com> Cc: Minchan Kim <minchan.kim@gmail.com> Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Cc: Mel Gorman <mel@csn.ul.ie> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Len Brown <lenb@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/processor_driver.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/acpi/processor_driver.c b/drivers/acpi/processor_driver.c
index cbf1f122666b..df34bd04ae62 100644
--- a/drivers/acpi/processor_driver.c
+++ b/drivers/acpi/processor_driver.c
@@ -45,6 +45,7 @@
#include <linux/cpuidle.h>
#include <linux/slab.h>
#include <linux/acpi.h>
+#include <linux/memory_hotplug.h>
#include <asm/io.h>
#include <asm/cpu.h>
@@ -641,6 +642,7 @@ static int acpi_processor_remove(struct acpi_device *device)
per_cpu(processors, pr->id) = NULL;
per_cpu(processor_device_array, pr->id) = NULL;
+ try_offline_node(cpu_to_node(pr->id));
free:
free_cpumask_var(pr->throttling.shared_cpu_map);
td>-21/+3Star * i2c: Drop I2C_CLIENT_INSMOD_1Jean Delvare2009-12-141-3/+2Star * i2c: Get rid of struct i2c_client_address_dataJean Delvare2009-12-141-1/+1 * i2c: Drop the kind parameter from detect callbacksJean Delvare2009-12-141-1/+1 * hwmon: Clean up detect functionsJean Delvare2009-12-091-13/+9Star * hwmon: (ds1621) Avoid unneeded register accessJean Delvare2009-03-301-6/+9 * hwmon: (ds1621) Clean up register accessJean Delvare2009-03-301-24/+24 * hwmon: (ds1621) Reorder code statementsJean Delvare2009-03-301-66/+57Star * hwmon: (ds1621) Convert to a new-style i2c driverJean Delvare2008-07-161-52/+47Star * hwmon: normal_i2c arrays should be constMark M. Hoffman2008-02-191-1/+1 * hwmon: Discard useless I2C driver IDsJean Delvare2008-02-081-1/+0Star * hwmon: Convert from class_device to deviceTony Jones2007-10-101-5/+5 * hwmon: Allow writing of negative trigger temperaturesChristian Hohnstaedt2007-10-101-1/+1 * hwmon/ds1621: Create individual alarm filesJean Delvare2007-07-191-0/+14 * hwmon/ds1621: Use dynamic sysfs callbacksJean Delvare2007-07-191-54/+48Star * hwmon/ds1621: Minor cleanupsJean Delvare2007-07-191-32/+19Star * hwmon/ds1621: Fix swapped temperature limitsJean Delvare2007-05-271-4/+4 * hwmon: Fix unchecked return status, batch 6Jean Delvare2006-09-291-8/+20 * [PATCH] hwmon: Semaphore to mutex conversionsIngo Molnar2006-03-23