lkml.org 
[lkml]   [2010]   [Jan]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[34/98] [SCSI] iscsi class: modify handling of replacement timeout
    2.6.32-stable review patch.  If anyone has any objections, please let us know.

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

    From: Mike Christie <michaelc@cs.wisc.edu>

    commit fdd46dcbe4468a1f47a2cc9be442d11c3d21dd68 upstream.

    This patch modifies the replacement/recovery_timeout so it works
    more like the fc fast io fail tmo.

    If userspace tries to set the replacement/recovery_timeout to less than
    zero, we will turn off the forced recovery cleanup.

    If userspace sets the value to 0 then we will force the recovery
    cleanup immediately.

    Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
    Signed-off-by: James Bottomley <James.Bottomley@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    drivers/scsi/scsi_transport_iscsi.c | 9 +++++----
    1 file changed, 5 insertions(+), 4 deletions(-)

    --- a/drivers/scsi/scsi_transport_iscsi.c
    +++ b/drivers/scsi/scsi_transport_iscsi.c
    @@ -627,8 +627,10 @@ static void __iscsi_block_session(struct
    spin_unlock_irqrestore(&session->lock, flags);
    scsi_target_block(&session->dev);
    ISCSI_DBG_TRANS_SESSION(session, "Completed SCSI target blocking\n");
    - queue_delayed_work(iscsi_eh_timer_workq, &session->recovery_work,
    - session->recovery_tmo * HZ);
    + if (session->recovery_tmo >= 0)
    + queue_delayed_work(iscsi_eh_timer_workq,
    + &session->recovery_work,
    + session->recovery_tmo * HZ);
    }

    void iscsi_block_session(struct iscsi_cls_session *session)
    @@ -1348,8 +1350,7 @@ iscsi_set_param(struct iscsi_transport *
    switch (ev->u.set_param.param) {
    case ISCSI_PARAM_SESS_RECOVERY_TMO:
    sscanf(data, "%d", &value);
    - if (value != 0)
    - session->recovery_tmo = value;
    + session->recovery_tmo = value;
    break;
    default:
    err = transport->set_param(conn, ev->u.set_param.param,



    \
     
     \ /
      Last update: 2010-01-27 01:03    [W:0.024 / U:30.508 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site