On Tue, 5 Jul 2016 15:39:33 +0100 Juri Lelli <juri.le...@arm.com> wrote:
return; > > > > > > /* > > > + * Use the scheduling parameters of the top pi-waiter task, > > > + * if we have one from which we can inherit a deadline. > > > + */ > > > + if (pi_task && dl_se->dl_boosted && dl_prio(pi_task->normal_prio)) > > > + pi_se = &pi_task->dl; > > > + > > > > OK, I'm micro-optimizing now, but hey, isn't this a fast path? > > > > What about changing the above to: > > > > struct task_struct *pi_task; > > [...] > > > > if (dl_se->dl_boosted && dl_prio(pi_task->normal_prio && > ^ > OK, we need to reorder these two > V > > (pi_task = rt_mutex_get_top_task(dl_task_of(dl_se))) > > pe_se = &pi_task->dl; Opps, you're right. > > > > This way we don't need to do any work of looking at > > rt_mutex_get_top_task() for the normal case. > > > > But, yes. Looks good to me. I'll shoot a v3 ASAP. I have to ask, should there be any check if the dl_se has a shorter deadline than the pi one? -- Steve