Re: [PATCH v3 03/17] scsi: No retries on abort success

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

 



On 10/20/20 2:53 PM, Mike Christie wrote:
> On 10/19/20 2:26 PM, Muneendra Kumar M wrote:
>> Hi Michael,
>>
>>>   check_type:
>>> +	/*
>>> +	 * Check whether caller has decided not to do retries on
>>> +	 * abort success by setting the SCMD_NORETRIES_ABORT bit
>>> +	 */
>>> +	if ((test_bit(SCMD_NORETRIES_ABORT, &scmd->state)) &&
>>> +		(scmd->request->cmd_flags & REQ_FAILFAST_TRANSPORT)) {
>>> +		set_host_byte(scmd, DID_TRANSPORT_MARGINAL);
>>
>>> Hey, one other thing that might be confusing me is this check and the
>>> naming. The 0/17 email description and the SCMD_NORETRIES_ABORT name makes
>>> me think we want to only run this if the cmd timedout and we went >through
>>> the SCSI EH TMF operations. However, I think this will end up failing other
>>> errors with DID_TRANSPORT_MARGINAL right?
>>
>>> Did you want just the the SCSI EH timeout/abort case to hit this or any
>>> errors that hit this code path?
>> [Muneendra]At present we want SCSI EH timeout/abort case to hit this.
> 
> What about adding a new eh callout that the transport classes can implement.
> They can check the port state at this time and decide if the cmd should be
> retried or failed. It would be similar to fc_eh_timed_out for example.
> 

Or, in the fc_eh_timed_out callout set the SCMD_NORETRIES_ABORT if port
state is marginal and it indicates it wants to abort the cmd. In
scsi_noretry_cmd above then you know we got there, because the cmd
timedout and we tried/were going to abort it. We don't need the code to
loop over running commands, the chkready changes, etc.



[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