Re: [GIT PULL] dynticks updates for 3.13

From: Ingo Molnar
Date: Sat Nov 30 2013 - 08:59:18 EST



* Frederic Weisbecker <fweisbec@xxxxxxxxx> wrote:

> Ingo,
>
> Please pull the timers/core branch that can be found at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
> timers/core
>
> It passed through 0-day testing. I'm proposing it for 3.13 just in case but I'm ok
> as well if you think it's too late and should be delayed for 3.14

Pulled into tip:timers/core, thanks Frederic!

In the future it would be nice to write a higher level description
that I can put into the merge commit. I wrote this:

Pull dynticks updates from Frederic Weisbecker: smaller fixes and
cleanups.

Btw., how does the bug here:

92e73cf831ba posix-timers: Fix full dynticks CPUs kick on timer rescheduling

manifest itself to users? Is there any real bug, or suboptimal nohz
behavior? (more wakeups than expected) This kind of information should
really be in the changelog.

>
> Thanks,
> Frederic
> ---
>
> Frederic Weisbecker (5):
> nohz: Convert a few places to use local per cpu accesses
> context_tracking: Wrap static key check into more intuitive function name
> context_tracking: Rename context_tracking_active() to context_tracking_cpu_is_enabled()
> posix-timers: Spare workqueue if there is no full dynticks CPU to kick
> posix-timers: Fix full dynticks CPUs kick on timer rescheduling
>
> Paul Gortmaker (1):
> trivial: fix spelling in CONTEXT_TRACKING_FORCE help text
>
>
> include/linux/context_tracking.h | 10 ++++-----
> include/linux/context_tracking_state.h | 11 +++++++---
> include/linux/tick.h | 8 ++++----
> include/linux/vtime.h | 4 ++--
> init/Kconfig | 2 +-
> kernel/context_tracking.c | 8 ++++----
> kernel/posix-cpu-timers.c | 21 +++++++++----------
> kernel/softirq.c | 4 +---
> kernel/time/tick-broadcast.c | 6 +++---
> kernel/time/tick-internal.h | 4 ++--
> kernel/time/tick-sched.c | 37 ++++++++++++++--------------------
> 11 files changed, 54 insertions(+), 61 deletions(-)

Btw., I noticed one other detail:

- tick_check_oneshot_broadcast(cpu);
- tick_check_nohz(cpu);
+ tick_check_oneshot_broadcast();
+ tick_check_nohz();

it would be nice to name such functions that lose a 'cpu' argument
with the this_cpu pattern, i.e.:

- tick_check_oneshot_broadcast_this_cpu()
- tick_check_nohz_this_cpu()

This makes it more obvious at a glance that they have 'current CPU'
assumptions in them.

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/