• Sven Schnelle's avatar
    s390/topology: fix topology information when calling cpu hotplug notifiers · a052096b
    Sven Schnelle authored
    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: default avatarSven Schnelle <svens@linux.ibm.com>
    Cc: <stable@vger.kernel.org>
    [hca@linux.ibm.com: get rid of cpu_online_mask handling]
    Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
    a052096b
smp.c 33.1 KB