]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
powerpc: use device_online/offline() instead of cpu_up/down()
authorDan Streetman <ddstreet@ieee.org>
Fri, 31 Oct 2014 19:41:34 +0000 (15:41 -0400)
committerJiri Slaby <jslaby@suse.cz>
Thu, 13 Nov 2014 18:03:06 +0000 (19:03 +0100)
commit8f9363f79d0b7cfb70f2dcec99719f6a53359d97
treec535bdc9d43867205a65a950e8e17ea901fa5f45
parentff631b1c39bf6ff7307eb43e40bcd8ee03e2450c
powerpc: use device_online/offline() instead of cpu_up/down()

commit 10ccaf178b2b961d8bca252d647ed7ed8aae2a20 upstream.

In powerpc pseries platform dlpar operations, use device_online() and
device_offline() instead of cpu_up() and cpu_down().

Calling cpu_up/down() directly does not update the cpu device offline
field, which is used to online/offline a cpu from sysfs. Calling
device_online/offline() instead keeps the sysfs cpu online value
correct. The hotplug lock, which is required to be held when calling
device_online/offline(), is already held when dlpar_online/offline_cpu()
are called, since they are called only from cpu_probe|release_store().

This patch fixes errors on phyp (PowerVM) systems that have cpu(s)
added/removed using dlpar operations; without this patch, the
/sys/devices/system/cpu/cpuN/online nodes do not correctly show the
online state of added/removed cpus.

Signed-off-by: Dan Streetman <ddstreet@ieee.org>
Cc: Nathan Fontenot <nfont@linux.vnet.ibm.com>
Fixes: 0902a9044fa5 ("Driver core: Use generic offline/online for CPU offline/online")
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
arch/powerpc/platforms/pseries/dlpar.c