public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
* queue_depth tracking from LLD
@ 2009-04-16  9:36 Christof Schmitt
  2009-04-16 14:13 ` James Smart
  0 siblings, 1 reply; 8+ messages in thread
From: Christof Schmitt @ 2009-04-16  9:36 UTC (permalink / raw)
  To: linux-scsi

I just came across the SCSI midlayer function scsi_track_queue_full.

If a SCSI command is returned with a status of QUEUE_FULL, then this
is mapped to ADD_TO_MLQUEUE and "device blocked". So, there is already
a mechanism in place. Is a LLD driver expected to additionally call
something like this to decrease the queue depth?

if (status_byte(scmd->result) == QUEUE_FULL)
	scsi_track_queue_full(sdev, sdev->queue_depth - 1))

If a LLD does this, should it also increase the queue depth again when
no more QUEUE_FULL status are seen? To me this looks like a
duplication of the midlayer device blocking, but i assume there is a
reason in having both, scsi_track_queue_full and the device blocking.

--
Christof Schmitt

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

end of thread, other threads:[~2009-04-16 15:33 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-16  9:36 queue_depth tracking from LLD Christof Schmitt
2009-04-16 14:13 ` James Smart
2009-04-16 14:27   ` Mike Christie
2009-04-16 14:38     ` James Smart
2009-04-16 15:27       ` Christof Schmitt
2009-04-16 15:32         ` James Smart
2009-04-16 14:33   ` Matthew Wilcox
2009-04-16 14:40     ` James Smart

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