lkml.org 
[lkml]   [2018]   [Mar]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 004/115] scsi: aacraid: Fix I/O drop during reset
    Date
    4.14-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Prasad B Munirathnam <prasad.munirathnam@microsemi.com>


    [ Upstream commit 5771cfffdffe709ae9b403b6f80438ca40bf850e ]

    "FIB_CONTEXT_FLAG_TIMEDOUT" flag is set in aac_eh_abort to indicate
    command timeout. Using the same flag in reset handler causes the command
    to time out and the I/Os were dropped.

    Define a new flag "FIB_CONTEXT_FLAG_EH_RESET" to make sure I/O is
    properly handled in eh_reset handler.

    [mkp: tweaked commit message]

    Signed-off-by: Prasad B Munirathnam <prasad.munirathnam@microsemi.com>
    Reviewed-by: Raghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com>
    Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/scsi/aacraid/aacraid.h | 1 +
    drivers/scsi/aacraid/linit.c | 2 +-
    2 files changed, 2 insertions(+), 1 deletion(-)

    --- a/drivers/scsi/aacraid/aacraid.h
    +++ b/drivers/scsi/aacraid/aacraid.h
    @@ -1724,6 +1724,7 @@ struct aac_dev
    #define FIB_CONTEXT_FLAG_NATIVE_HBA (0x00000010)
    #define FIB_CONTEXT_FLAG_NATIVE_HBA_TMF (0x00000020)
    #define FIB_CONTEXT_FLAG_SCSI_CMD (0x00000040)
    +#define FIB_CONTEXT_FLAG_EH_RESET (0x00000080)

    /*
    * Define the command values
    --- a/drivers/scsi/aacraid/linit.c
    +++ b/drivers/scsi/aacraid/linit.c
    @@ -1037,7 +1037,7 @@ static int aac_eh_bus_reset(struct scsi_
    info = &aac->hba_map[bus][cid];
    if (bus >= AAC_MAX_BUSES || cid >= AAC_MAX_TARGETS ||
    info->devtype != AAC_DEVTYPE_NATIVE_RAW) {
    - fib->flags |= FIB_CONTEXT_FLAG_TIMED_OUT;
    + fib->flags |= FIB_CONTEXT_FLAG_EH_RESET;
    cmd->SCp.phase = AAC_OWNER_ERROR_HANDLER;
    }
    }

    \
     
     \ /
      Last update: 2018-03-02 10:01    [W:4.694 / U:0.100 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site