Re: [PATCH RFC] hisi_sas_v3: multiqueue support

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

 



On Mon, Jun 03, 2019 at 09:57:26AM +0100, John Garry wrote:
> > > > Otherwise duplicated slot can be used from different blk-mq hw queue.
> > > > 
> > > > > 
> > > > > > The worsen thing is that V3's actual max queue depth is (4096 - 96), but
> > > > > > this patch claims that the device can support (4096 - 96) * 32 command
> > > > > > slots
> > > 
> > > To be clear about the hw, the hw supports max 4096 command tags and has 16
> > 
> > Is 4096 the max allowed host-wide command tags? Or per-queue's max commands
> > tags?
> 
> 4096 is max allowed host wide, in range [0, 4096), and tags are not per
> queue. HW delivery queues can be configured to be as large as desired.

Then all delivery(and complete) queues share the 4096 command slots, we can't
convert hisi_sas V3 into typical blk-mq MQ model simply as done by Hannes's patch.

Or you may partition the 4096 tags into 16 queues, then each queue's
depth is ~256. Depends on if performance is good for workloads.
You still can build a unique tag easily in [0, 4096), such as
(req->tag * hw_queue_index).

blk-mq's hw queue has independent tags, which is from NVMe's submission/completion
queue.

> 
> And on another point I saw mentioned, the device supports multiple
> submission and multiple completion queues. They are symmetrical, and any
> command will always complete on the same queue index which it was submitted.

DQ & CQ did confuse me a bit, :-)

Thanks,
Ming



[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