Re: [PATCH v3] mpt3sas: correct reset of smid while clearing scsi tracker

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

 



On Tue, 2018-08-07 at 12:10 +-0530, Sreekanth Reddy wrote:
+AD4- This function +AF8-base+AF8-get+AF8-chain+AF8-buffer+AF8-tracker() is called only during
+AD4- the IO submission time and mpt3sas+AF8-base+AF8-clear+AF8-st() is called during IO
+AD4- completion time and hence I don't see any race condition here.
+AD4- 
+AD4- Currently this patch is very much needed, so please consider this
+AD4- patch. May be we can start new email thread to discuss on the possible
+AD4- race conditions you are observing and I can clear your quires or I can
+AD4- fix them as on we can find the real race conditions.

Hello Sreekanth,

How can this patch be necessary if there are no races between I/O submission
and I/O completion? Changing the order of two memory writes only makes sense
if there is a race condition involved. Since the block layer allocates a
request tag before scsih+AF8-qcmd() is called and since mpt3sas+AF8-base+AF8-free+AF8-smid()
is called before scmd-+AD4-scsi+AF8-done(scmd) in +AF8-scsih+AF8-io+AF8-done(), the request tag
is freed after the smid has been freed when I/O completes in a normal way.
So there shouldn't be a race condition in that scenario.

By the way, you have not answered my question about why development of this
patch started. Does this patch address a theoretical concern or a real bug?
In the latter case, which scenario triggers the addressed bug? If you want
this patch to go upstream you should be able to explain why you think it is
useful, and that description should be included in the patch description.

Thanks,

Bart.





[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