Re: scsi-mq prototype

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

 



On 07/12/13 02:23, Nicholas A. Bellinger wrote:
> [ ... ] I would like to discuss scsi-mq, a high performance SCSI
> initiator prototype that utilizes blk-mq [ ... ]

(replying to an e-mail of four months ago)

It took a while but I finally found some time to look further into
blk-mq and scsi-mq. Did I see correctly that the scsi-mq prototype
implements the so-called hw queues in the SCSI core and not in the SCSI
LLDs ? Sorry but that approach looks wrong to me. Several high-end
storage adapters already support multiple queues today. E.g. the NVMe
specification supports up to 64.000 I/O queues. With InfiniBand HCA's it
is possible to create multiple queues between initiator and target for
e.g. the iSER and SRP protocols to increase throughput. When there are
multiple queues between initiator and target there is a potential that
SCSI commands get reordered. The SCSI specifications define whether or
not it is allowed to change the submission order of commands. As an
example, if two atomic writes are submitted by the same CPU neither the
block layer nor the SCSI core nor the SCSI LLD nor the SCSI target is
allowed to reorder these. With the scsi-mq prototype present in your
repo the only way for a SCSI LLD to guarantee that SCSI commands for
which the submission order must be preserved do not get reordered is
either to limit the queue depth to one or to use a single queue for
communication with the target. I don't think this is what we want.

In other words, the so-called hw queue concept must be mapped onto
queues managed by the SCSI LLD and not onto queues managed by the SCSI
core. That will allow the block layer and the SCSI core to preserve SCSI
command submission order when necessary by queueing ordered commands on
the same hardware queue.

See also
https://git.kernel.org/cgit/linux/kernel/git/nab/target-pending.git/log/?h=scsi-mq.

Bart.

--
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




[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