]> bbs.cooldavid.org Git - net-next-2.6.git/commit
x86, tlb flush_data: replace per_cpu with an array
authorFrederik Deweerdt <frederik.deweerdt@xprog.eu>
Mon, 12 Jan 2009 21:35:42 +0000 (22:35 +0100)
committerIngo Molnar <mingo@elte.hu>
Wed, 14 Jan 2009 11:04:53 +0000 (12:04 +0100)
commit09b3ec7315a18d885127544204f1e389d41058d0
treea87dbf01992ac7bc5c5f832635e5ecbe95e04e39
parentc59765042f53a79a7a65585042ff463b69cb248c
x86, tlb flush_data: replace per_cpu with an array

Impact: micro-optimization, memory reduction

On x86_64 flush tlb data is stored in per_cpu variables. This is
unnecessary because only the first NUM_INVALIDATE_TLB_VECTORS entries
are accessed.

This patch aims at making the code less confusing (there's nothing
really "per_cpu") by using a plain array. It also would save some memory
on most distros out there (Ubuntu x86_64 has NR_CPUS=64 by default).

[ Ravikiran G Thirumalai also pointed out that the correct alignment
  is ____cacheline_internodealigned_in_smp, so that there's no
  bouncing on vsmp. ]

Signed-off-by: Frederik Deweerdt <frederik.deweerdt@xprog.eu>
Acked-by: Ravikiran Thirumalai <kiran@scalex86.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/tlb_64.c