SCSI queue size

Hi,

Is there a way to query a SCSI miniport device to get the current queue size and the max queue size? Is there a way to collect statistics about how many times the queue was full (basically how many times SRB_STATUS_BUSY was returned)?

I tried to look at the Win32_SCSIController WMI class and IOCTL_SCSI_XXX and IOCTL_STORAGE_XXX but I couldn’t find any thing obvious. Any help would be appreciated!

G.

> Hi,

Is there a way to query a SCSI miniport device to get the current
queue size
and the max queue size? Is there a way to collect statistics about how
many
times the queue was full (basically how many times SRB_STATUS_BUSY was
returned)?

I tried to look at the Win32_SCSIController WMI class and
IOCTL_SCSI_XXX and
IOCTL_STORAGE_XXX but I couldn’t find any thing obvious. Any help
would be
appreciated!

WMI has disk queue length metrics, but that is probably not just the
scsiport queue.

Is it good practice for a scsiport to return SRB_STATUS_BUSY? When I
return that it seems to slow things down horribly. I find it better just
not to ask for another SRB if my queue is full, or to maintain my own
queue internally.

James

Thanks for the help. I decided to add some performance counters to my driver and monitor my pending IRPs myself.

G.