summary refs log tree commit diff
path: root/arch/s390/mm/pgtable.c
diff options
context:
space:
mode:
authorSven Schnelle <svens@linux.ibm.com>2021-08-27 20:21:05 +0200
committerHeiko Carstens <hca@linux.ibm.com>2021-09-07 13:38:41 +0200
commita052096bdd6809eeab809202726634d1ac975aa1 (patch)
tree80e72fe5fe0a406816ca467958870dd0f8dc5bec /arch/s390/mm/pgtable.c
parent88b604263f3d6eedae0b1c2c3bbd602d1e2e8775 (diff)
downloadlinux-a052096bdd6809eeab809202726634d1ac975aa1.tar.gz
s390/topology: fix topology information when calling cpu hotplug notifiers
The cpu hotplug notifiers are called without updating the core/thread
masks when a new CPU is added. This causes problems with code setting
up data structures in a cpu hotplug notifier, and relying on that later
in normal code.

This caused a crash in the new core scheduling code (SCHED_CORE),
where rq->core was set up in a notifier depending on cpu masks.

To fix this, add a cpu_setup_mask which is used in update_cpu_masks()
instead of the cpu_online_mask to determine whether the cpu masks should
be set for a certain cpu. Also move update_cpu_masks() to update the
masks before calling notify_cpu_starting() so that the notifiers are
seeing the updated masks.

Signed-off-by: Sven Schnelle <svens@linux.ibm.com>
Cc: <stable@vger.kernel.org>
[hca@linux.ibm.com: get rid of cpu_online_mask handling]
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Diffstat (limited to 'arch/s390/mm/pgtable.c')
0 files changed, 0 insertions, 0 deletions