diff options
author | Tejun Heo <tj@kernel.org> | 2011-01-25 14:26:50 +0100 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2011-01-25 14:26:50 +0100 |
commit | 19df0c2fef010e94e90df514aaf4e73f6b80145c (patch) | |
tree | 4b0b9c10622aead0d8b658cca6c49090149a91a8 /arch/alpha | |
parent | c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 (diff) | |
download | linux-19df0c2fef010e94e90df514aaf4e73f6b80145c.tar.gz linux-19df0c2fef010e94e90df514aaf4e73f6b80145c.tar.bz2 linux-19df0c2fef010e94e90df514aaf4e73f6b80145c.zip |
percpu: align percpu readmostly subsection to cacheline
Currently percpu readmostly subsection may share cachelines with other
percpu subsections which may result in unnecessary cacheline bounce
and performance degradation.
This patch adds @cacheline parameter to PERCPU() and PERCPU_VADDR()
linker macros, makes each arch linker scripts specify its cacheline
size and use it to align percpu subsections.
This is based on Shaohua's x86 only patch.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Shaohua Li <shaohua.li@intel.com>
Diffstat (limited to 'arch/alpha')
-rw-r--r-- | arch/alpha/kernel/vmlinux.lds.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/alpha/kernel/vmlinux.lds.S b/arch/alpha/kernel/vmlinux.lds.S index 003ef4c02585..173518f8c8bb 100644 --- a/arch/alpha/kernel/vmlinux.lds.S +++ b/arch/alpha/kernel/vmlinux.lds.S @@ -38,7 +38,7 @@ SECTIONS __init_begin = ALIGN(PAGE_SIZE); INIT_TEXT_SECTION(PAGE_SIZE) INIT_DATA_SECTION(16) - PERCPU(PAGE_SIZE) + PERCPU(64, PAGE_SIZE) /* Align to THREAD_SIZE rather than PAGE_SIZE here so any padding page needed for the THREAD_SIZE aligned init_task gets freed after init */ . = ALIGN(THREAD_SIZE); |