Re: possible_cpus broken in linux-next

From: Rafael J. Wysocki
Date: Wed May 29 2013 - 15:02:32 EST


On 5/29/2013 8:50 PM, Toshi Kani wrote:
On Wed, 2013-05-29 at 12:35 -0600, Toshi Kani wrote:
On Wed, 2013-05-29 at 10:10 -0700, Dave Hansen wrote:
:

Thanks for the report. The following patch fixes the problem.
-Toshi

====
From: Toshi Kani <toshi.kani@xxxxxx>
Subject: [PATCH] ACPI: Fix sysfs cpu/online of offlined cpus
Typo. The subject needs to be:

Subject: [PATCH] cpu: Fix sysfs cpu/online of offlined cpus

-Toshi

As reported by Dave Hansen, sysfs cpu/online shows 1 for
offlined cpus at boot.
https://lkml.org/lkml/2013/5/29/403

Fix this problem by initializing dev.offline with cpu_online()
when registering a cpu.

Reported-by: Dave Hansen <dave.hansen@xxxxxxxxx>
Signed-off-by: Toshi Kani <toshi.kani@xxxxxx>

Thanks Toshi!

Dave, can you please confirm that the problem is fixed by this patch?

Rafael


---
drivers/base/cpu.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 130ba0b..b9f0eec 100644
--- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c
@@ -281,6 +281,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


---------------------------------------------------------------------
Intel Technology Poland sp. z o.o.
z siedziba w Gdansku
ul. Slowackiego 173
80-298 Gdansk

Sad Rejonowy Gdansk Polnoc w Gdansku, VII Wydzial Gospodarczy Krajowego Rejestru Sadowego, numer KRS 101882

NIP 957-07-52-316
Kapital zakladowy 200.000 zl

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
¢éì®&Þ~º&¶¬–+-±éÝ¥Šw®žË±Êâmébžìdz¹Þ)í…æèw*jg¬±¨¶‰šŽŠÝj/êäz¹ÞŠà2ŠÞ¨è­Ú&¢)ß«a¶Úþø®G«éh®æj:+v‰¨Šwè†Ù>Wš±êÞiÛaxPjØm¶Ÿÿà -»+ƒùdš_