public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
* scsi_host_template.queuecommand() instances
@ 2011-02-27 19:22 john smith
  2011-02-27 22:21 ` Matthew Wilcox
  0 siblings, 1 reply; 7+ messages in thread
From: john smith @ 2011-02-27 19:22 UTC (permalink / raw)
  To: linux-scsi

I understand that inside LDD's scsi_host_template.queuecommand(), the card->spinlock can be used to protect shared data between concurrent instances of queuecommand and bottom-half/tasklets IO completion code.
For SMP system with PCIE/MSIX enabled interrupts, there can be multiple instances of completion tasklets.
The questions I have are:
 
- can there be multiple instances of queuecommand as well?
- if so, I would assume they are IO commands issued for different targets (controlled by LDD), correct?
Also, if true, these multiple instances must be running on different kernel threads spwaned by the SCSI mid layer, or block layer?

Links to detailed and uptodate Block layer description would be appreciated (the ones I found are either old and superficial),

thanks,
John 


      

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2011-03-08 18:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-02-27 19:22 scsi_host_template.queuecommand() instances john smith
2011-02-27 22:21 ` Matthew Wilcox
2011-02-28  7:21   ` john smith
2011-02-28 13:24     ` Matthew Wilcox
2011-02-28 14:14       ` James Bottomley
2011-03-08 18:22         ` john smith
2011-03-04 20:58       ` john smith

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox