Re: [RFC][PATCH 0/3] Refactoring sched_entity and sched_rt_entity.

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Lucas De Marchi
Date: Tuesday, January 4, 2011 - 11:29 am

On Tue, Jan 4, 2011 at 15:58, Dario Faggioli <raistlin@linux.it> wrote:

Suppose a RT task blocks on a PI-mutex, the lock owner will be boosted
to RT and go through a class change in rt_mutex_setprio().
Since now a class change reinitializes the class-specific, if fair and
rt fields are on the same memory space, we need to save the
sched_fair_entity before changing the class to RT and put it again
when going back to the fair class.

Quoting Peter about this:

 [ Initially I was thinking not, because the task slept we'll have to
reinsert it in the rb-tree anyway, but upon further consideration
that'll loose the old vruntime setting, which can lead to an unseemly
gain of time in place_entity()'s never backward check failing.

So yes, we'd have to place a copy of the old sched_entity in struct
rt_mutex_waiter, not very hard to do. ]


As a side-note: irc this is one thing i didn't do when i prepared that patches.



Lucas De Marchi
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [RFC][PATCH 0/3] Refactoring sched_entity and sched_rt ..., Lucas De Marchi, (Tue Jan 4, 11:29 am)