summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorToshi Kani <toshi.kani@hp.com>2013-05-30 00:30:05 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-05-30 00:30:05 +0200
commit1001b4d4a8ee6b2e7a6078a02ccdf68f91b192bd (patch)
tree5bd6dbc24954e10c9b655f66e6df108774d5474f /drivers
parentDriver core: Introduce offline/online callbacks for memory blocks (diff)
downloadlinux-1001b4d4a8ee6b2e7a6078a02ccdf68f91b192bd.tar.xz
linux-1001b4d4a8ee6b2e7a6078a02ccdf68f91b192bd.zip
CPU: Fix sysfs cpu/online of offlined CPUs
As reported by Dave Hansen, sysfs cpu/online shows 1 for offlined CPUs at boot. Fix this problem by initializing dev.offline with cpu_online() when registering a CPU. References: https://lkml.org/lkml/2013/5/29/403 Reported-and-tested-by: Dave Hansen <dave.hansen@intel.com> Signed-off-by: Toshi Kani <toshi.kani@hp.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/base/cpu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 7431ba6fc2d4..1d110dc6f0c1 100644
--- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c
@@ -265,6 +265,7 @@ int __cpuinit register_cpu(struct cpu *cpu, int num)
cpu->dev.bus = &cpu_subsys;
cpu->dev.release = cpu_device_release;
cpu->dev.offline_disabled = !cpu->hotpluggable;
+ cpu->dev.offline = !cpu_online(num);
#ifdef CONFIG_ARCH_HAS_CPU_AUTOPROBE
cpu->dev.bus->uevent = arch_cpu_uevent;
#endif