[PATCH 00/10] clockevents: Rearrange cpuhotplug operations

Frederic Weisbecker posted 10 patches 1 month, 1 week ago
arch/arm/kernel/smp_twd.c                 |  1 -
drivers/clocksource/arm_arch_timer.c      |  2 -
drivers/clocksource/arm_global_timer.c    |  1 -
drivers/clocksource/exynos_mct.c          |  1 -
drivers/clocksource/timer-armada-370-xp.c |  1 -
drivers/clocksource/timer-qcom.c          |  1 -
drivers/clocksource/timer-tegra.c         |  1 -
include/linux/tick.h                      |  2 -
kernel/cpu.c                              |  2 -
kernel/time/clockevents.c                 | 45 ++++++++++++-----------
kernel/time/tick-sched.c                  | 25 +++----------
11 files changed, 30 insertions(+), 52 deletions(-)
[PATCH 00/10] clockevents: Rearrange cpuhotplug operations
Posted by Frederic Weisbecker 1 month, 1 week ago
Some recent RCU issues triggered with offline ticks uncovered
hotplug behaviour differences between oneshot and periodic ticks.
The former is disabled on the dying CPU but not the latter. Also
the clockevents hotplug code is quite chaotic. This is a proposal to
fix the situation.

Frederic Weisbecker (10):
  clockevents: Improve clockevents_notify_released() comment
  clockevents: Shutdown and unregister current clockevents at
    CPUHP_AP_TICK_DYING
  tick: Remove now unneeded low-res tick stop on CPUHP_AP_TICK_DYING
  arm/twd: Remove clockevents shutdown call on offlining
  clocksource/drivers/arm_arch_timer: Remove clockevents shutdown call
    on offlining
  clocksource/driver/arm_global_timer: Remove clockevents shutdown call
    on offlining
  drivers/clocksource/exynos_mct: Remove clockevents shutdown call on
    offlining
  clocksource/drivers/armada-370-xp: Remove clockevents shutdown call on
    offlining
  clocksource/drivers/qcom: Remove clockevents shutdown call on
    offlining
  drivers/clocksource/timer-tegra: Remove clockevents shutdown call on
    offlining

 arch/arm/kernel/smp_twd.c                 |  1 -
 drivers/clocksource/arm_arch_timer.c      |  2 -
 drivers/clocksource/arm_global_timer.c    |  1 -
 drivers/clocksource/exynos_mct.c          |  1 -
 drivers/clocksource/timer-armada-370-xp.c |  1 -
 drivers/clocksource/timer-qcom.c          |  1 -
 drivers/clocksource/timer-tegra.c         |  1 -
 include/linux/tick.h                      |  2 -
 kernel/cpu.c                              |  2 -
 kernel/time/clockevents.c                 | 45 ++++++++++++-----------
 kernel/time/tick-sched.c                  | 25 +++----------
 11 files changed, 30 insertions(+), 52 deletions(-)

-- 
2.46.0
Re: [PATCH 00/10] clockevents: Rearrange cpuhotplug operations
Posted by Thomas Gleixner 1 month ago
On Thu, Oct 17 2024 at 18:50, Frederic Weisbecker wrote:
> Some recent RCU issues triggered with offline ticks uncovered
> hotplug behaviour differences between oneshot and periodic ticks.
> The former is disabled on the dying CPU but not the latter. Also
> the clockevents hotplug code is quite chaotic. This is a proposal to
> fix the situation.

I like it very much!

> Frederic Weisbecker (10):
>   clockevents: Improve clockevents_notify_released() comment
>   clockevents: Shutdown and unregister current clockevents at
>     CPUHP_AP_TICK_DYING

This has a build fail.

>   tick: Remove now unneeded low-res tick stop on CPUHP_AP_TICK_DYING
>   arm/twd: Remove clockevents shutdown call on offlining

The ARM prefix preference is:

    ARM: smp_twd:

>   clocksource/drivers/arm_arch_timer: Remove clockevents shutdown call
>     on offlining
>   clocksource/driver/arm_global_timer: Remove clockevents shutdown call
>     on offlining
>   drivers/clocksource/exynos_mct: Remove clockevents shutdown call on
>     offlining
>   clocksource/drivers/armada-370-xp: Remove clockevents shutdown call on
>     offlining
>   clocksource/drivers/qcom: Remove clockevents shutdown call on
>     offlining
>   drivers/clocksource/timer-tegra: Remove clockevents shutdown call on
>     offlining

Can you please make the subsystem prefixes for the clocksource drivers
consistent 'clocksource/drivers/foo:' ?

Thanks,

        tglx
Re: [PATCH 00/10] clockevents: Rearrange cpuhotplug operations
Posted by Frederic Weisbecker 3 weeks, 6 days ago
Le Thu, Oct 24, 2024 at 10:34:34AM +0200, Thomas Gleixner a écrit :
> On Thu, Oct 17 2024 at 18:50, Frederic Weisbecker wrote:
> > Some recent RCU issues triggered with offline ticks uncovered
> > hotplug behaviour differences between oneshot and periodic ticks.
> > The former is disabled on the dying CPU but not the latter. Also
> > the clockevents hotplug code is quite chaotic. This is a proposal to
> > fix the situation.
> 
> I like it very much!
> 
> > Frederic Weisbecker (10):
> >   clockevents: Improve clockevents_notify_released() comment
> >   clockevents: Shutdown and unregister current clockevents at
> >     CPUHP_AP_TICK_DYING
> 
> This has a build fail.

Right.

> 
> >   tick: Remove now unneeded low-res tick stop on CPUHP_AP_TICK_DYING
> >   arm/twd: Remove clockevents shutdown call on offlining
> 
> The ARM prefix preference is:
> 
>     ARM: smp_twd:
> 
> >   clocksource/drivers/arm_arch_timer: Remove clockevents shutdown call
> >     on offlining
> >   clocksource/driver/arm_global_timer: Remove clockevents shutdown call
> >     on offlining
> >   drivers/clocksource/exynos_mct: Remove clockevents shutdown call on
> >     offlining
> >   clocksource/drivers/armada-370-xp: Remove clockevents shutdown call on
> >     offlining
> >   clocksource/drivers/qcom: Remove clockevents shutdown call on
> >     offlining
> >   drivers/clocksource/timer-tegra: Remove clockevents shutdown call on
> >     offlining
> 
> Can you please make the subsystem prefixes for the clocksource drivers
> consistent 'clocksource/drivers/foo:' ?

Sure, fixing that.

Thanks!

> 
> Thanks,
> 
>         tglx