On 2021/09/27 11:38, Bart Van Assche wrote: > On 9/26/21 17:19, Damien Le Moal wrote: >> Another thing: in patch 3, you are actually not handling the overflows. So >> dd_queued() may return some very weird number (temporarily) when the inserted >> count overflows before the completed count does. Since >> dd_dispatch_aged_requests() does not care about the actual value of dd_queued(), >> only if it is 0 or not, I am not 100% sure if it is useful to fix. Except maybe >> for sysfs attributes ? > > Hmm ... I'm not following. I think it can be proven mathematically that > dd_queued() returns a number in the range [0, max_queued_requests). Here is > an example: > * inserted = 1 (wrapped around). > * completed = UINT32_MAX - 1 (about to wrap but has not yet wrapped around). > * dd_queued() returns 2. You mean 3, right ? But yes... Slow Monday, I need more coffee :) Cheers. -- Damien Le Moal Western Digital Research