Hello, On Tue, Jul 20, 2021 at 12:35:54AM +0800, brookxu wrote: > In order to avoid code duplication and IOPS stability problems caused by estimating > the equivalent number of IOs, and to avoid potential deadlock problems caused by > synchronization through queue_lock. I tried to count the number of splited IOs in > the current window through two atomic counters. Add the value of the atomic variable > when calculating io_disp[rw], which can also avoid the problem of inaccurate IOPS in > large IO scenarios. How do you think of this approach? Thanks for your time. I guess it's okay but am still not a big fan of adding another hook. This is primarily because blk-throtl is sitting too early in the stack - e.g. rq_qos is doing the same thing but sits after the split path - and it's a bit nasty to add an additional hook for it. Do you think it can be an option to relocate the blk-throtl hooks to the same spots as rq-qos or, even better, make it use rq-qos? Thanks. -- tejun