[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.10.1505071613250.14506@vshiva-Udesk>
Date: Thu, 7 May 2015 16:15:41 -0700 (PDT)
From: Vikas Shivappa <vikas.shivappa@...el.com>
To: Peter Zijlstra <peterz@...radead.org>
cc: Vikas Shivappa <vikas.shivappa@...el.com>,
Vikas Shivappa <vikas.shivappa@...ux.intel.com>,
linux-kernel@...r.kernel.org, x86@...nel.org, hpa@...or.com,
tglx@...utronix.de, mingo@...nel.org, tj@...nel.org,
matt.fleming@...el.com, will.auld@...el.com,
peter.zijlstra@...el.com, h.peter.anvin@...el.com,
kanaka.d.juvva@...el.com
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.
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists