Re: [PATCH v2 07/18] block: introduce duration-limits priority class

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

 



On 1/17/23 16:25, Christoph Hellwig wrote:
> On Thu, Jan 12, 2023 at 03:03:56PM +0100, Niklas Cassel wrote:
>> From: Damien Le Moal <damien.lemoal@xxxxxxxxxxxxxxxxxx>
>>
>> Introduce the IOPRIO_CLASS_DL priority class to indicate that IOs should
>> be executed using duration-limits targets. The duration target to apply
>> to a command is indicated using the priority level. Up to 8 levels are
>> supported, with level 0 indiating "no limit".
>>
>> This priority class has effect only if the target device supports the
>> command duration limits feature and this feature is enabled by the user.
>> In BFQ and mq-deadline, all requests with this new priority class are
>> handled using the highest priority class RT and priority level 0.
> 
> Hmm, does it make sense to force a high priority?  Can't applications
> use CDL to also fore a lower priority?

They can, by using a large limit for "low priority" IOs. But then, these
would still have a limit while any IO issued simultaneously without a CDL
index specified would have no limit at all. So strictly speaking, the no
limit IOs should be considered as even lower priority that CDL IOs with
large limits.

The other aspect here is that on ATA drives, CDL and NCQ priority cannot
be used together. A mix of CDL and high priority commands cannot be sent
to a device. Combining this with the above thinking, it made sense to me
to have the CDL priority class handled the same as the RT class (as that
is the one that maps to ATA NCQ high prio commands).

-- 
Damien Le Moal
Western Digital Research




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux