On Mon, Feb 20, 2023 at 09:54:28PM +0800, Hou Tao wrote: > From: Hou Tao <houtao1@xxxxxxxxxx> > > Since commit a78418e6a04c ("block: Always initialize bio IO priority on > submit"), bio->bi_ioprio will never be IOPRIO_CLASS_NONE when calling > blkcg_set_ioprio(), so there will be no way to promote the io-priority > of one cgroup to IOPRIO_CLASS_RT, because bi_ioprio will always be > greater than or equals to IOPRIO_CLASS_RT. > > It seems possible to call blkcg_set_ioprio() first then try to > initialize bi_ioprio later in bio_set_ioprio(), but this doesn't work > for bio in which bi_ioprio is already initialized (e.g., direct-io), so > introduce a new ioprio policy to promote the iopriority of bio to > IOPRIO_CLASS_RT if the ioprio is not already RT. > > So introduce a new promote-to-rt policy to achieve this. For none-to-rt > policy, although it doesn't work now, but considering that its purpose > was also to override the io-priority to RT and allow for a smoother > transition, just keep it and treat it as an alias of the promote-to-rt > policy. > > Signed-off-by: Hou Tao <houtao1@xxxxxxxxxx> Acked-by: Tejun Heo <tj@xxxxxxxxxx> Thanks. -- tejun