• Cornelia Huck's avatar
    [S390] cio: Avoid machine check vs. not operational races. · 3f4cf6e7
    Cornelia Huck authored
    
    
    There was the possibilty that an action like ccw_device_set_offline()
    triggered by a device gone machine check might trigger a not oper
    event. Unfortunately, this could lead to the situation that we tried
    to unregister a subchannel twice: Once from the slow path evaluation,
    and once via the not oper event.
    
    Fix this by always using the same mechanism (css_schedule_eval()) for
    triggering the unregister. This makes sure that unregistration will
    only be done once. As an added bonus, it also simplyfies the code.
    Signed-off-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
    Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
    3f4cf6e7
device.c 37.3 KB