]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/64s/idle: Consolidate power9_offline_stop()/power9_idle_stop()
authorMichael Ellerman <mpe@ellerman.id.au>
Tue, 3 Apr 2018 23:01:08 +0000 (09:01 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 3 Apr 2018 23:09:35 +0000 (09:09 +1000)
commitbc2b276d8f5b4fb5d59b169f9fbceb47e48ac7e6
tree1d4a1ba8a4c3a762c43a5560622cc10d115c1cbd
parent6c44e900c60b2f071ff35aa511560a97a88730ce
powerpc/64s/idle: Consolidate power9_offline_stop()/power9_idle_stop()

Commit f67dbf73d111 ("powerpc/64s/idle: POWER9 implement a separate
idle stop function for hotplug") that added power9_offline_stop() was
written before commit 5476858b5b99 ("powerpc/powernv: Provide a way to
force a core into SMT4 mode").

When merging the former I failed to notice that it caused us to skip
the force-SMT4 logic for offline CPUs. The result is that offlined
CPUs will not correctly participate in the force-SMT4 logic, which
presumably will result in badness (not tested).

Reconcile the two commits by making power9_offline_stop() a pre-cursor
to power9_idle_stop(), so that they share the force-SMT4 logic.

This is based on an original commit from Nick, all breakage is my own.

Fixes: f67dbf73d111 ("powerpc/64s/idle: POWER9 implement a separate idle stop function for hotplug")
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
arch/powerpc/kernel/idle_book3s.S