On Fri, 2011-02-25 at 11:19 -0800, va stg2010 wrote: > Thanks ! > There is a 32-bit tag to refer back the queue(for pending commands) > when responses are posted back by HBA. Suppose the HBA is receiving > commands from multiple initiators because the host has virtualized > initiator environment, now in this case one single large queue is > good enough or there should be pending-commands-queue per virtual > initiator or pending-command-queue per disks. It doesn't have to be virtualised; this is the normal situation on a SAN. For a pending queue, the question is merely how to do efficient lookup. Some drivers use a fixed offset list (with the offset in the completion tag) ... I suppose a radix tree would be a good way to go for particularly large pending queues. > Just want to minimize the locking contentions and maximize > parallelism in SCSI I/O to multiple disks from multiple virtual > initiators via my HBA. To be honest, fixes offset lists are best then ... they can operated locklessly. James -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html