• K
    [SCSI] mpt2sas: Fix the race between broadcast asyn event and scsi command completion · ec07a053
    Kashyap, Desai 提交于
    False timeout after hard resets, there were two issues which leads
    to timeout.
    (1) Panic because of invalid memory access in the broadcast asyn
    event processing routine due to a race between accessing the scsi command
    pointer from broadcast asyn event processing thread and completing
    the same scsi command from the interrupt context.
    (2)  Broadcast asyn event notifcations are not handled due to events
    ignored while the broadcast asyn event is activity being processed
    from the event process kernel thread.
    
    In addition, changed the ABRT_TASK_SET to ABORT_TASK in the
    broadcast async event processing routine.   This is less disruptive to other
    request that generate Broadcast Asyn Primitives besides target
    reset. e.g clear reservations, microcode download,and mode select.
    Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com>
    Cc: stable@kernel.org
    Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
    ec07a053
mpt2sas_scsih.c 206.9 KB