[PATCH 10/11] x86: use new macro for .data.read_mostly section.

From: Tim Abbott
Date: Thu Apr 30 2009 - 20:12:39 EST


.data.read_mostly should not need a separate output section; this
change moves it into the .data section.

Since after the .data.read_mostly unification, _edata is now in the
same place on 32-bit and 64-bit, combine the definitions.

Signed-off-by: Tim Abbott <tabbott@xxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxxxxx>
---
arch/x86/kernel/vmlinux.lds.S | 19 ++-----------------
1 files changed, 2 insertions(+), 17 deletions(-)

diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S
index 296b49c..7235ee5 100644
--- a/arch/x86/kernel/vmlinux.lds.S
+++ b/arch/x86/kernel/vmlinux.lds.S
@@ -107,33 +107,18 @@ SECTIONS
NOSAVE_DATA
#ifdef CONFIG_X86_32
CACHELINE_ALIGNED_DATA(32)
+ READ_MOSTLY_DATA(32)
#else
CACHELINE_ALIGNED_DATA(CONFIG_X86_L1_CACHE_BYTES)
+ READ_MOSTLY_DATA(CONFIG_X86_INTERNODE_CACHE_BYTES)
#endif
DATA_DATA
CONSTRUCTORS

-#ifdef CONFIG_X86_64
/* End of data section */
_edata = .;
-#endif
} :data

- /* rarely changed data like cpu maps */
-#ifdef CONFIG_X86_32
- . = ALIGN(32);
-#else
- . = ALIGN(CONFIG_X86_INTERNODE_CACHE_BYTES);
-#endif
- .data.read_mostly : AT(ADDR(.data.read_mostly) - LOAD_OFFSET) {
- *(.data.read_mostly)
-
-#ifdef CONFIG_X86_32
- /* End of data section */
- _edata = .;
-#endif
- }
-
#ifdef CONFIG_X86_64

#define VSYSCALL_ADDR (-10*1024*1024)
--
1.6.2.1

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