diff options
| -rw-r--r-- | arch/avr32/mm/init.c | 4 | ||||
| -rw-r--r-- | arch/powerpc/kernel/vdso.c | 3 | ||||
| -rw-r--r-- | arch/powerpc/kernel/vdso32/vdso32_wrapper.S | 3 | ||||
| -rw-r--r-- | arch/powerpc/kernel/vdso64/vdso64_wrapper.S | 3 | ||||
| -rw-r--r-- | arch/s390/kernel/vdso.c | 2 | ||||
| -rw-r--r-- | arch/s390/kernel/vdso32/vdso32_wrapper.S | 3 | ||||
| -rw-r--r-- | arch/s390/kernel/vdso64/vdso64_wrapper.S | 3 | ||||
| -rw-r--r-- | arch/x86/include/asm/cache.h | 4 | ||||
| -rw-r--r-- | arch/x86/kernel/head_32.S | 2 |
9 files changed, 16 insertions, 11 deletions
diff --git a/arch/avr32/mm/init.c b/arch/avr32/mm/init.c index e819fa69a90e..cc60d10cf8f7 100644 --- a/arch/avr32/mm/init.c +++ b/arch/avr32/mm/init.c | |||
| @@ -24,11 +24,9 @@ | |||
| 24 | #include <asm/setup.h> | 24 | #include <asm/setup.h> |
| 25 | #include <asm/sections.h> | 25 | #include <asm/sections.h> |
| 26 | 26 | ||
| 27 | #define __page_aligned __attribute__((section(".data.page_aligned"))) | ||
| 28 | |||
| 29 | DEFINE_PER_CPU(struct mmu_gather, mmu_gathers); | 27 | DEFINE_PER_CPU(struct mmu_gather, mmu_gathers); |
| 30 | 28 | ||
| 31 | pgd_t swapper_pg_dir[PTRS_PER_PGD] __page_aligned; | 29 | pgd_t swapper_pg_dir[PTRS_PER_PGD] __page_aligned_data; |
| 32 | 30 | ||
| 33 | struct page *empty_zero_page; | 31 | struct page *empty_zero_page; |
| 34 | EXPORT_SYMBOL(empty_zero_page); | 32 | EXPORT_SYMBOL(empty_zero_page); |
diff --git a/arch/powerpc/kernel/vdso.c b/arch/powerpc/kernel/vdso.c index a0abce251d0a..3faaf29bdb29 100644 --- a/arch/powerpc/kernel/vdso.c +++ b/arch/powerpc/kernel/vdso.c | |||
| @@ -1,3 +1,4 @@ | |||
| 1 | |||
| 1 | /* | 2 | /* |
| 2 | * Copyright (C) 2004 Benjamin Herrenschmidt, IBM Corp. | 3 | * Copyright (C) 2004 Benjamin Herrenschmidt, IBM Corp. |
| 3 | * <benh@kernel.crashing.org> | 4 | * <benh@kernel.crashing.org> |
| @@ -74,7 +75,7 @@ static int vdso_ready; | |||
| 74 | static union { | 75 | static union { |
| 75 | struct vdso_data data; | 76 | struct vdso_data data; |
| 76 | u8 page[PAGE_SIZE]; | 77 | u8 page[PAGE_SIZE]; |
| 77 | } vdso_data_store __attribute__((__section__(".data.page_aligned"))); | 78 | } vdso_data_store __page_aligned_data; |
| 78 | struct vdso_data *vdso_data = &vdso_data_store.data; | 79 | struct vdso_data *vdso_data = &vdso_data_store.data; |
| 79 | 80 | ||
| 80 | /* Format of the patch table */ | 81 | /* Format of the patch table */ |
diff --git a/arch/powerpc/kernel/vdso32/vdso32_wrapper.S b/arch/powerpc/kernel/vdso32/vdso32_wrapper.S index 556f0caa5d84..6e8f507ed32b 100644 --- a/arch/powerpc/kernel/vdso32/vdso32_wrapper.S +++ b/arch/powerpc/kernel/vdso32/vdso32_wrapper.S | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | #include <linux/init.h> | 1 | #include <linux/init.h> |
| 2 | #include <linux/linkage.h> | ||
| 2 | #include <asm/page.h> | 3 | #include <asm/page.h> |
| 3 | 4 | ||
| 4 | .section ".data.page_aligned" | 5 | __PAGE_ALIGNED_DATA |
| 5 | 6 | ||
| 6 | .globl vdso32_start, vdso32_end | 7 | .globl vdso32_start, vdso32_end |
| 7 | .balign PAGE_SIZE | 8 | .balign PAGE_SIZE |
diff --git a/arch/powerpc/kernel/vdso64/vdso64_wrapper.S b/arch/powerpc/kernel/vdso64/vdso64_wrapper.S index 0529cb9e3b97..b8553d62b792 100644 --- a/arch/powerpc/kernel/vdso64/vdso64_wrapper.S +++ b/arch/powerpc/kernel/vdso64/vdso64_wrapper.S | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | #include <linux/init.h> | 1 | #include <linux/init.h> |
| 2 | #include <linux/linkage.h> | ||
| 2 | #include <asm/page.h> | 3 | #include <asm/page.h> |
| 3 | 4 | ||
| 4 | .section ".data.page_aligned" | 5 | __PAGE_ALIGNED_DATA |
| 5 | 6 | ||
| 6 | .globl vdso64_start, vdso64_end | 7 | .globl vdso64_start, vdso64_end |
| 7 | .balign PAGE_SIZE | 8 | .balign PAGE_SIZE |
diff --git a/arch/s390/kernel/vdso.c b/arch/s390/kernel/vdso.c index 45e1708b70fd..45a3e9a7ae21 100644 --- a/arch/s390/kernel/vdso.c +++ b/arch/s390/kernel/vdso.c | |||
| @@ -75,7 +75,7 @@ __setup("vdso=", vdso_setup); | |||
| 75 | static union { | 75 | static union { |
| 76 | struct vdso_data data; | 76 | struct vdso_data data; |
| 77 | u8 page[PAGE_SIZE]; | 77 | u8 page[PAGE_SIZE]; |
| 78 | } vdso_data_store __attribute__((__section__(".data.page_aligned"))); | 78 | } vdso_data_store __page_aligned_data; |
| 79 | struct vdso_data *vdso_data = &vdso_data_store.data; | 79 | struct vdso_data *vdso_data = &vdso_data_store.data; |
| 80 | 80 | ||
| 81 | /* | 81 | /* |
diff --git a/arch/s390/kernel/vdso32/vdso32_wrapper.S b/arch/s390/kernel/vdso32/vdso32_wrapper.S index 61639a89e70b..ae42f8ce350b 100644 --- a/arch/s390/kernel/vdso32/vdso32_wrapper.S +++ b/arch/s390/kernel/vdso32/vdso32_wrapper.S | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | #include <linux/init.h> | 1 | #include <linux/init.h> |
| 2 | #include <linux/linkage.h> | ||
| 2 | #include <asm/page.h> | 3 | #include <asm/page.h> |
| 3 | 4 | ||
| 4 | .section ".data.page_aligned" | 5 | __PAGE_ALIGNED_DATA |
| 5 | 6 | ||
| 6 | .globl vdso32_start, vdso32_end | 7 | .globl vdso32_start, vdso32_end |
| 7 | .balign PAGE_SIZE | 8 | .balign PAGE_SIZE |
diff --git a/arch/s390/kernel/vdso64/vdso64_wrapper.S b/arch/s390/kernel/vdso64/vdso64_wrapper.S index d8e2ac14d564..c245842b516f 100644 --- a/arch/s390/kernel/vdso64/vdso64_wrapper.S +++ b/arch/s390/kernel/vdso64/vdso64_wrapper.S | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | #include <linux/init.h> | 1 | #include <linux/init.h> |
| 2 | #include <linux/linkage.h> | ||
| 2 | #include <asm/page.h> | 3 | #include <asm/page.h> |
| 3 | 4 | ||
| 4 | .section ".data.page_aligned" | 5 | __PAGE_ALIGNED_DATA |
| 5 | 6 | ||
| 6 | .globl vdso64_start, vdso64_end | 7 | .globl vdso64_start, vdso64_end |
| 7 | .balign PAGE_SIZE | 8 | .balign PAGE_SIZE |
diff --git a/arch/x86/include/asm/cache.h b/arch/x86/include/asm/cache.h index 5d367caa0e36..549860d3be8f 100644 --- a/arch/x86/include/asm/cache.h +++ b/arch/x86/include/asm/cache.h | |||
| @@ -1,6 +1,8 @@ | |||
| 1 | #ifndef _ASM_X86_CACHE_H | 1 | #ifndef _ASM_X86_CACHE_H |
| 2 | #define _ASM_X86_CACHE_H | 2 | #define _ASM_X86_CACHE_H |
| 3 | 3 | ||
| 4 | #include <linux/linkage.h> | ||
| 5 | |||
| 4 | /* L1 cache line size */ | 6 | /* L1 cache line size */ |
| 5 | #define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT) | 7 | #define L1_CACHE_SHIFT (CONFIG_X86_L1_CACHE_SHIFT) |
| 6 | #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT) | 8 | #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT) |
| @@ -13,7 +15,7 @@ | |||
| 13 | #ifdef CONFIG_SMP | 15 | #ifdef CONFIG_SMP |
| 14 | #define __cacheline_aligned_in_smp \ | 16 | #define __cacheline_aligned_in_smp \ |
| 15 | __attribute__((__aligned__(1 << (INTERNODE_CACHE_SHIFT)))) \ | 17 | __attribute__((__aligned__(1 << (INTERNODE_CACHE_SHIFT)))) \ |
| 16 | __attribute__((__section__(".data.page_aligned"))) | 18 | __page_aligned_data |
| 17 | #endif | 19 | #endif |
| 18 | #endif | 20 | #endif |
| 19 | 21 | ||
diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S index 1dac23958427..218aad7ee76e 100644 --- a/arch/x86/kernel/head_32.S +++ b/arch/x86/kernel/head_32.S | |||
| @@ -626,7 +626,7 @@ ENTRY(empty_zero_page) | |||
| 626 | * This starts the data section. | 626 | * This starts the data section. |
| 627 | */ | 627 | */ |
| 628 | #ifdef CONFIG_X86_PAE | 628 | #ifdef CONFIG_X86_PAE |
| 629 | .section ".data.page_aligned","wa" | 629 | __PAGE_ALIGNED_DATA |
| 630 | /* Page-aligned for the benefit of paravirt? */ | 630 | /* Page-aligned for the benefit of paravirt? */ |
| 631 | .align PAGE_SIZE_asm | 631 | .align PAGE_SIZE_asm |
| 632 | ENTRY(swapper_pg_dir) | 632 | ENTRY(swapper_pg_dir) |
