Hi, sorry for the late reply. On Mon, 22 May 2023 15:22:52 -0400 Vineeth Remanan Pillai <vineeth@xxxxxxxxxxxxxxx> wrote: [...] > > But when I use > > dq = -(max{u_i, (Umax - Uinact - Uextra)} / Umax) * dt > > everything works as expected, the 4 tasks reclaim 95% of the CPU > > time and my shell is still active... > > (so, I cannot reproduce the starvation issue with this equation) > > > Sorry about this confusion, yes you are right, there is no stall with > this equation. The only issue is the lesser reclaim when the load is > less and tasks have different bandwidth requirements. > > > So, I now think the second one is the correct equation to be used. > > > Thanks for confirming. > > I think it probably makes sense to get the fix for the equation to go > in as a first step and then we can investigate more about the second > issue (less reclaiming with less load and different bandwidth) and > fix it separately. What do you think? I fully agree. If you split this change in a first patch, IMHO it can be applied. BTW, I tried changing the equation without introducing div64, and it seems to me that it works well... So, if removing the bw_ratio approximation is needed, I think you can do it in a second patch (so, the first patch changes the reclaiming equation, and the second one introduces div64) Thanks, Luca > I shall send the next iteration > with the fix for the equation alone if its okay with you. > > Thanks, > Vineeth