On Fri, Mar 8, 2019 at 6:52 PM Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote: > > On Wed, Mar 06, 2019 at 12:49:55PM -0500, Martin K. Petersen wrote: > > > > Hannes & Christoph: Please comment on Sreekanth's proposed approach. > > Iterating over all tags from the driver is always wrong. We've been > though this a few times. Current issue is very easy to be reproduced and it is widely impacted. We proposed this approach i.e. invoking scsi_host_find_tag() for only those tags which are outstanding at the driver level; as this has very minimal code changes without impacting any design and also it will work in both non-mq + mq mode. We can rework on those code sections where driver is iterating over all tags. I understood from your reply that - "Low level driver should not have any requirement to loop outstanding IOs". Not sure if such things can be done without SML support. AFAIK, similar issue is very generic and many low level scsi driver has similar requirement. Can we go with current solution assuming any new interface as you requested can be done as separate activity? Thanks, Sreekanth