Messages in this thread | | | Date | Thu, 7 May 2015 16:15:41 -0700 (PDT) | From | Vikas Shivappa <> | Subject | Re: [PATCH 4/7] x86/intel_rdt: Implement scheduling support for Intel RDT |
| |
On Wed, 6 May 2015, Peter Zijlstra wrote:
> On Mon, May 04, 2015 at 11:39:21AM -0700, Vikas Shivappa wrote: > >>>> --- a/arch/x86/include/asm/switch_to.h >>>> +++ b/arch/x86/include/asm/switch_to.h >>>> @@ -8,6 +8,9 @@ struct tss_struct; >>>> void __switch_to_xtra(struct task_struct *prev_p, struct task_struct *next_p, >>>> struct tss_struct *tss); >>>> >>>> +#include <asm/intel_rdt.h> >>>> +#define post_arch_switch(current) rdt_sched_in(current) >>>> + >>>> #ifdef CONFIG_X86_32 >>>> >>>> #ifdef CONFIG_CC_STACKPROTECTOR >>> >>>> diff --git a/kernel/sched/core.c b/kernel/sched/core.c >>>> index f9123a8..cacb490 100644 >>>> --- a/kernel/sched/core.c >>>> +++ b/kernel/sched/core.c >>>> @@ -2241,6 +2241,7 @@ static struct rq *finish_task_switch(struct task_struct *prev) >>>> prev_state = prev->state; >>>> vtime_task_switch(prev); >>>> finish_arch_switch(prev); >>>> + post_arch_switch(current); >>>> perf_event_task_sched_in(prev, current); >>>> finish_lock_switch(rq, prev); >>>> finish_arch_post_lock_switch(); >>> >>> Not a word in the Changelog on this hook; that's double fail. >> >> will add the changelog. we want the current task which no other existing >> hook provides. > > No. > > 1) two arch hooks right after one another is FAIL > 1a) just 'fix' the existing hook > 2) current is cheap and easily obtainable without passing it as > an argument
will fix to just use an existing hook in finish_task_switch and current(get_current) since the stack would already be changed ..
Thanks, Vikas
> 3) why do you need the hook in the first place? > 3a) why can't you put this in __switch_to()? This is very much x86 only > code. >
| |