> Actively push out the current running task on a non-preferred CPU. Since
> the task is currently running, a stopper thread must be queued to push the
> task out. However, if the task is pinned only to non-preferred CPUs,
> it will continue running there. This helps to maintain userspace
> affinities, unlike CPU hotplug or isolated cpusets.
> 
> Though the code is similar to __balance_push_cpu_stop and quite close to
> push_cpu_stop, it is kept separate as it provides a cleaner
> implementation specifically for CONFIG_PREFERRED_CPU.
> 
> Add the npc_push_work_pending flag to protect the work buffer.
> 
> For now, only the currently running task is pushed out. This keeps the code
> simpler. In the future, an optimization may be added to move all queued
> tasks on the runqueue.
> 
> This works only for the FAIR scheduling class.
> 
> Signed-off-by: Shrikanth Hegde <[email protected]>

Sashiko has reviewed this patch and found no issues. It looks great!

-- 
Sashiko AI review ยท 
https://sashiko.dev/#/patchset/[email protected]?part=8


Reply via email to