On Tue, Nov 09, 2021 at 02:29:32PM +0100, Niklas Cassel wrote: > On Tue, Nov 09, 2021 at 03:38:36PM +0900, Damien Le Moal wrote: > > On 2021/11/09 9:28, Niklas Cassel wrote: > > > From: Niklas Cassel <niklas.cassel@xxxxxxx> > > The question is, if percentage == 0, for e.g. writes, > but the user specified cmdprio=3 > (which sets cmdprio->level[] for both DDIR read and write), > should we set the HIGH_PRIO / LOW_PRIO flag? > > I think the best way is to simply not set any of the flags, > If cmdprio percentage is 0 for a certain ddir, then everything > will be sent with the default prio. > > So I will keep the unconditional reassignment of cmdprio->class[] > here, since it shouldn't matter. If the percentage is 0 for a ddir, > the value should never be used anyway. > > Will add a if (!p) return false; > > after the p = fio_cmdprio_percentage(cmdprio, io_u); > assignment that this patch does instead. After further consideration, I think it is easier to just keep the existing behavior for now. This specific line will change in the upcoming cmdprio patch series that adds a clat_prio array and a clat_prio_index anyway, so let's leave this minor optimization for that point in time. (The upcoming patch series will specify an exact ioprio, so it will not have to deal with the HIGH/LOW flags, in the case where we will not use the cmdprio value. So we will be able to simplify things further at that time.) Kind regards, Niklas