Re: [PATCH 16/16] scsi_dh_alua: Use workqueue for RTPG

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Dec 20, 2013 at 8:13 PM, Hannes Reinecke <hare@xxxxxxx> wrote:
> 
> +static void alua_rtpg_work(struct work_struct *work)
> +{
> ..........
> +       if (pg->flags & ALUA_PG_RUN_STPG) {
> +               spin_unlock_irqrestore(&pg->rtpg_lock, flags);
> +               err = alua_stpg(sdev, pg);
> +               spin_lock_irqsave(&pg->rtpg_lock, flags);
> +               pg->flags &= ~ALUA_PG_RUN_STPG;
> +               pg->flags |= ALUA_PG_STPG_DONE;
> +               if (err == SCSI_DH_RETRY) {
> +                       pg->flags |= ALUA_PG_RUN_RTPG;
> +                       pg->interval = ALUA_RTPG_DELAY_MSECS * 1000;
>

Is the line above a typo?

pg->interval is measured in second unit. You won't want to set it as
milliseconds*1000. And ALUA_RTPG_DELAY_MSECS is used for queueing delayed rtpg
work, not for delay in retry cases such as state of transitioning. What you
want may be set a new delay time to start, similar to "pg->interval += 2" in
alua_rtpg when state of transitioning is returned.

Thanks,
Vaughan
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux