• Brian King's avatar
    ipr: wait for aborted command responses · 6cdb0817
    Brian King authored
    Fixes a race condition in abort handling that was injected
    when multiple interrupt support was added. When only a single
    interrupt is present, the adapter guarantees it will send
    responses for aborted commands prior to the response for the
    abort command itself. With multiple interrupts, these responses
    generally come back on different interrupts, so we need to
    ensure the abort thread waits until the aborted command is
    complete so we don't perform a double completion. This race
    condition was being hit frequently in environments which
    were triggering command timeouts, which was resulting in
    a double completion causing a kernel oops.
    
    Cc: <stable@vger.kernel.org>
    Signed-off-by: default avatarBrian King <brking@linux.vnet.ibm.com>
    Reviewed-by: default avatarWendy Xiong <wenxiong@linux.vnet.ibm.com>
    Tested-by: default avatarWendy Xiong <wenxiong@linux.vnet.ibm.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    6cdb0817
ipr.c 285 KB