lkml.org 
[lkml]   [2016]   [Mar]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 2.6.32 23/55] scsi_dh_rdac: always retry MODE SELECT on command lock violation
    2.6.32-longterm review patch.  If anyone has any objections, please let me know.

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

    From: Hannes Reinecke <hare@suse.de>

    commit d2d06d4fe0f2cc2df9b17fefec96e6e1a1271d91 upstream.

    If MODE SELECT returns with sense '05/91/36' (command lock violation)
    it should always be retried without counting the number of retries.
    During an HBA upgrade or similar circumstances one might see a flood
    of MODE SELECT command from various HBAs, which will easily trigger
    the sense code and exceed the retry count.

    Signed-off-by: Hannes Reinecke <hare@suse.de>
    Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
    Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    Signed-off-by: Willy Tarreau <w@1wt.eu>
    ---
    drivers/scsi/device_handler/scsi_dh_rdac.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/drivers/scsi/device_handler/scsi_dh_rdac.c b/drivers/scsi/device_handler/scsi_dh_rdac.c
    index 268189d..ec985bc 100644
    --- a/drivers/scsi/device_handler/scsi_dh_rdac.c
    +++ b/drivers/scsi/device_handler/scsi_dh_rdac.c
    @@ -518,7 +518,7 @@ static int mode_select_handle_sense(struct scsi_device *sdev,
    /*
    * Command Lock contention
    */
    - err = SCSI_DH_RETRY;
    + err = SCSI_DH_IMM_RETRY;
    break;
    default:
    break;
    @@ -556,6 +556,8 @@ retry:
    err = mode_select_handle_sense(sdev, h->sense);
    if (err == SCSI_DH_RETRY && retry_cnt--)
    goto retry;
    + if (err == SCSI_DH_IMM_RETRY)
    + goto retry;
    }
    if (err == SCSI_DH_OK) {
    h->state = RDAC_STATE_ACTIVE;
    --
    1.7.12.2.21.g234cd45.dirty


    \
     
     \ /
      Last update: 2016-03-04 17:41    [W:4.053 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site