On Wed, Sep 03, 2025 at 10:41:21AM -1000, Tejun Heo wrote: > Hello, > > On Wed, Sep 03, 2025 at 10:08:22PM +0200, Peter Zijlstra wrote: > > > I'm a bit confused. This series doesn't have prep patches to add @rf to > > > dl_server_pick_f. Is this the right patch? > > > > Patch 14 seems to be the proposed alternative, and I'm not liking that > > at all. > > > > That rf passing was very much also needed for that other issue; I'm not > > sure why that's gone away. > > Using balance() was my suggestion to stay within the current framework. If > we want to add @rf to pick_task(), that's more fundamental change. We > dropped the discussion in the other thread but I found it odd to add @rf to > pick_task() while disallowing the use of @rf in non-dl-server pick path and > if we want to allow that, we gotta solve the race between pick_task() > dropping rq lock and the ttwu inserting high pri task. Yeah, patch 14 is fixing this, but this needs to be changed, because we dropped the patch that adds @rf to pick_task(). I'll fix this in the next version if we decide to stick with this way. About balance() vs @rf, IIUC after pick_task() drops the rq lock a concurrent ttwu() can already enqueue a higher-priority task, so the race isn't really specific to @rf and it's more about making sure we don't start using @rf in ways that rely on the pick being stable until the actual switch, right? If that’s correct, extending @rf to pick_task() wouldn't make things worse than what we have, though sticking with balance() may still be the safer incremental step... Thanks, -Andrea