Re: [tip:timers/core] timer: Allocate per-cpu tvec_base's statically

From: Eric Dumazet
Date: Tue Apr 14 2015 - 10:13:59 EST


On Thu, 2015-04-02 at 11:47 -0700, tip-bot for Peter Zijlstra wrote:
> Commit-ID: b337a9380f7effd60d082569dd7e0b97a7549730
> Gitweb: http://git.kernel.org/tip/b337a9380f7effd60d082569dd7e0b97a7549730
> Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> AuthorDate: Tue, 31 Mar 2015 20:49:00 +0530
> Committer: Ingo Molnar <mingo@xxxxxxxxxx>
> CommitDate: Thu, 2 Apr 2015 17:46:00 +0200
>
> timer: Allocate per-cpu tvec_base's statically
>
...

> This will also guarantee that tvec_base is cacheline aligned. Even
> though tvec_base has ____cacheline_aligned stuck on, kzalloc_node() does
> not actually respect that (but guarantees a minimum u64 alignment).

...

> +static DEFINE_PER_CPU(struct tvec_base, __tvec_bases);


This should probably use DEFINE_PER_CPU_ALIGNED() to avoid holes in
percpu section.


$ objdump -h kernel/time/built-in.o | grep percpu
111 .data..percpu 00002592 0000000000000000 0000000000000000 0001cbc0
2**6


instead of :

$ objdump -h kernel/time/built-in.o | grep percpu
111 .data..percpu 00000532 0000000000000000 0000000000000000 0001cbc0
2**5
113 .data..percpu..shared_aligned 00002040 0000000000000000
0000000000000000 0001d140 2**6

I'll send a patch.


--
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/