* Peter Zijlstra <peterz@xxxxxxxxxxxxx> [2019-12-12 11:10:31]: > On Thu, Dec 12, 2019 at 09:46:17AM +1100, Dave Chinner wrote: > > On Wed, Dec 11, 2019 at 11:08:29PM +0530, Srikar Dronamraju wrote: > > Good point, something to maybe try (Srikar?) is making tick preemption > more agressive for such tasks. > > The below extends the previous patch to retain the set_next_buddy() on > wakeup, but does not make the actual preemption more agressive. > > Then it 'fixes' the tick preemption to better align with the actual > scheduler pick (ie. consider the buddy hints). > Just to let you know, I tried the patch, but it doesn't help. The results were identical to the one without the patch. I think its probably because when we allow the task to stay on the runqueue, it will surely lead to load_balance and so we see the active-balance kick in. Peter, Based on what Dave is asking for, would you be okay if we add 1. A delayed_wake_list per runqueue, 2. A new wake_up API to add tasks to this delayed wake_list 3. On schedule, tasks on the delayed_wake_list would be actually woken up. -- Thanks and Regards Srikar Dronamraju