Re: [PATCH 2/3] scsi: fnic: Stop setting scsi_cmnd.tag

From: Hannes Reinecke
Date: Mon Aug 16 2021 - 07:11:16 EST


On 8/16/21 12:00 PM, John Garry wrote:
> On 14/08/2021 13:35, Hannes Reinecke wrote:
>> On 8/14/21 9:39 AM, Christoph Hellwig wrote:
>>> On Fri, Aug 13, 2021 at 08:17:45PM -0700, Bart Van Assche wrote:
>>>> On 8/13/21 6:49 AM, John Garry wrote:
>>>>> It is never read. Setting it and the request tag seems dodgy
>>>>> anyway.
>>>>
>>>> This is done because there is code in the SCSI error handler that may
>>>> allocate a SCSI command without allocating a tag. See also
>>>> scsi_ioctl_reset().
>
> Right, so we just get a loan of the tag of a real request. fnic driver
> comment:
>
> "Really should fix the midlayer to pass in a proper request for ioctls..."
>
>>>
>>> Yes.  Hannes had a great series to stop passing the pointless scsi_cmnd
>>> to the reset methods.  Hannes, any chance you coul look into
>>> resurrecting that?
>>>
>> Sure.
>
> The latest iteration of that series - at v7 - still passed that fake
> SCSI command to the reset method, and the reset method allocated the
> internal command.
>
> So will we change change scsi_ioctl_reset() to allocate an internal
> command, rather than the LLDD?
>
Nah, Christoph was talking about my patch series to revamp the SCSI
error handler.
With that one we'll be passing the respective objects to the SCSI EH
functions (ie struct scsi_device for eh_device_reset()), doing away with
the need to allocate an internal command for ioctl reset.
Currently revamping the patchset, should be ready later this week.

Cheers,

Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare@xxxxxxx +49 911 74053 688
SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), GF: Felix Imendörffer