Re: [V2] perf/core: Avoid calling perf_mux_hrtimer_restart multiple times when scheduling event groups

From: Athira Rajeev
Date: Thu Oct 21 2021 - 08:23:11 EST




> On 18-Oct-2021, at 4:37 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
> On Sat, Oct 16, 2021 at 01:08:04AM +0000, Song Liu wrote:
>>
>>
>>> On Oct 15, 2021, at 12:04 AM, Athira Rajeev <atrajeev@xxxxxxxxxxxxxxxxxx> wrote:
>>>
>>> Perf uses multiplexing if there are more events to be scheduled than the
>>> available counters. With multiplexing, event groups will be rotated at
>>> specified interval of time which is set using "hrtimer". During event
>>> scheduling, if any of the event group fails to schedule, multiplexing
>>> gets enabled by setting "rotate_necessary" for that event context and
>>> starting the hrtimer by calling "perf_mux_hrtimer_restart".
>>>
>>> Patch adds an optimisation to avoid calling "perf_mux_hrtimer_restart"
>>> multiple times if already rotate_necessary is set for that context.
>>> Even though "perf_mux_hrtimer_restart" will just return if hrtimer is
>>> already active, this could avoid the overhead of calling this function
>>> multiple times if there are many event groups. Patch adds the check to
>>> avoid calling perf_mux_hrtimer_restart() for each event group on
>>> every schedule.
>>>
>>> Signed-off-by: Athira Rajeev <atrajeev@xxxxxxxxxxxxxxxxxx>
>>
>> Acked-by: Song Liu <song@xxxxxxxxxx>
>
> Thanks!

Thanks for checking the patch.

Hi Peterz,
Should I resend this patch with Acked-by or can you consider pulling it, if the patch looks fine to you.

Thanks
Athira.