Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1377698 > unrolled thread

Re: [PATCH] sched/clock: Make local_clock/cpu_clock inline

Started byIngo Molnar <mingo@kernel.org>
First post2016-04-13 11:50 +0200
Last post2016-04-13 12:10 +0200
Articles 4 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH] sched/clock: Make local_clock/cpu_clock inline Ingo Molnar <mingo@kernel.org> - 2016-04-13 11:50 +0200
    Re: [PATCH] sched/clock: Make local_clock/cpu_clock inline Daniel Lezcano <daniel.lezcano@linaro.org> - 2016-04-13 11:50 +0200
      Re: [PATCH] sched/clock: Make local_clock/cpu_clock inline Ingo Molnar <mingo@kernel.org> - 2016-04-13 12:00 +0200
        Re: [PATCH] sched/clock: Make local_clock/cpu_clock inline Daniel Lezcano <daniel.lezcano@linaro.org> - 2016-04-13 12:10 +0200

#1377698 — Re: [PATCH] sched/clock: Make local_clock/cpu_clock inline

FromIngo Molnar <mingo@kernel.org>
Date2016-04-13 11:50 +0200
SubjectRe: [PATCH] sched/clock: Make local_clock/cpu_clock inline
Message-ID<rnpAR-7Is-3@gated-at.bofh.it>
* Daniel Lezcano <daniel.lezcano@linaro.org> wrote:

> The local_clock/cpu_clock functions were changed to prevent a double
> identical test with sched_clock_cpu() when HAVE_UNSTABLE_SCHED_CLOCK
> is set. That resulted in one line functions.
> 
> As these functions are in all the cases one line functions and in the
> hot path, it is useful to specify them as static inline in order to
> give a strong hint to the compiler.
> 
> After verification, it appears the compiler does not inline them
> without this hint. Change those functions to static inline.
> 
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> ---
>  include/linux/sched.h | 32 ++++++++++++++++++++++++++++++--
>  kernel/sched/clock.c  | 41 -----------------------------------------
>  2 files changed, 30 insertions(+), 43 deletions(-)

Hm, this does not seem to apply to v4.6-rc3 cleanly.

Thanks,

	Ingo

[toc] | [next] | [standalone]


#1377702

FromDaniel Lezcano <daniel.lezcano@linaro.org>
Date2016-04-13 11:50 +0200
Message-ID<rnpAS-7Is-15@gated-at.bofh.it>
In reply to#1377698
On 04/13/2016 11:41 AM, Ingo Molnar wrote:
>
> * Daniel Lezcano <daniel.lezcano@linaro.org> wrote:
>
>> The local_clock/cpu_clock functions were changed to prevent a double
>> identical test with sched_clock_cpu() when HAVE_UNSTABLE_SCHED_CLOCK
>> is set. That resulted in one line functions.
>>
>> As these functions are in all the cases one line functions and in the
>> hot path, it is useful to specify them as static inline in order to
>> give a strong hint to the compiler.
>>
>> After verification, it appears the compiler does not inline them
>> without this hint. Change those functions to static inline.
>>
>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>> ---
>>   include/linux/sched.h | 32 ++++++++++++++++++++++++++++++--
>>   kernel/sched/clock.c  | 41 -----------------------------------------
>>   2 files changed, 30 insertions(+), 43 deletions(-)
>
> Hm, this does not seem to apply to v4.6-rc3 cleanly.

Actually I based the patches on top of tip/sched/core.

Shall I rebase them against v4.6-rc3 ?


-- 
  <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

[toc] | [prev] | [next] | [standalone]


#1377712

FromIngo Molnar <mingo@kernel.org>
Date2016-04-13 12:00 +0200
Message-ID<rnpKy-7Mh-29@gated-at.bofh.it>
In reply to#1377702
* Daniel Lezcano <daniel.lezcano@linaro.org> wrote:

> On 04/13/2016 11:41 AM, Ingo Molnar wrote:
> >
> >* Daniel Lezcano <daniel.lezcano@linaro.org> wrote:
> >
> >>The local_clock/cpu_clock functions were changed to prevent a double
> >>identical test with sched_clock_cpu() when HAVE_UNSTABLE_SCHED_CLOCK
> >>is set. That resulted in one line functions.
> >>
> >>As these functions are in all the cases one line functions and in the
> >>hot path, it is useful to specify them as static inline in order to
> >>give a strong hint to the compiler.
> >>
> >>After verification, it appears the compiler does not inline them
> >>without this hint. Change those functions to static inline.
> >>
> >>Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> >>---
> >>  include/linux/sched.h | 32 ++++++++++++++++++++++++++++++--
> >>  kernel/sched/clock.c  | 41 -----------------------------------------
> >>  2 files changed, 30 insertions(+), 43 deletions(-)
> >
> >Hm, this does not seem to apply to v4.6-rc3 cleanly.
> 
> Actually I based the patches on top of tip/sched/core.

This patch does not seem to apply to tip/sched/core either (2b8c41daba32).

Thanks,

	Ingo

[toc] | [prev] | [next] | [standalone]


#1377726

FromDaniel Lezcano <daniel.lezcano@linaro.org>
Date2016-04-13 12:10 +0200
Message-ID<rnpUf-86v-29@gated-at.bofh.it>
In reply to#1377712
On 04/13/2016 11:51 AM, Ingo Molnar wrote:
>
> * Daniel Lezcano <daniel.lezcano@linaro.org> wrote:
>
>> On 04/13/2016 11:41 AM, Ingo Molnar wrote:
>>>
>>> * Daniel Lezcano <daniel.lezcano@linaro.org> wrote:
>>>
>>>> The local_clock/cpu_clock functions were changed to prevent a double
>>>> identical test with sched_clock_cpu() when HAVE_UNSTABLE_SCHED_CLOCK
>>>> is set. That resulted in one line functions.
>>>>
>>>> As these functions are in all the cases one line functions and in the
>>>> hot path, it is useful to specify them as static inline in order to
>>>> give a strong hint to the compiler.
>>>>
>>>> After verification, it appears the compiler does not inline them
>>>> without this hint. Change those functions to static inline.
>>>>
>>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>>>> ---
>>>>   include/linux/sched.h | 32 ++++++++++++++++++++++++++++++--
>>>>   kernel/sched/clock.c  | 41 -----------------------------------------
>>>>   2 files changed, 30 insertions(+), 43 deletions(-)
>>>
>>> Hm, this does not seem to apply to v4.6-rc3 cleanly.
>>
>> Actually I based the patches on top of tip/sched/core.
>
> This patch does not seem to apply to tip/sched/core either (2b8c41daba32).

Ah, yes. I received a compilation error because of a missing 
EXPORT_SYMBOL_GPL for an inlined function call from kbuild test:

ERROR: "sched_clock_cpu" [kernel/torture.ko] undefined!
ERROR: "sched_clock_cpu" [drivers/gpu/drm/i915/i915.ko] undefined!

So I resent a fixed V2.

https://lkml.org/lkml/2016/4/11/603
https://lkml.org/lkml/2016/4/11/602

Sorry, I did not notice you were mentioning the first version which is 
outdated. The V2 is based on top of 2b8c41daba32.

   -- Daniel

-- 
  <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web