summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2009-06-14 22:10:41 +0200
committerSam Ravnborg <sam@ravnborg.org>2009-06-14 22:10:41 +0200
commit7923f90fffa8746f6457d4eea2109fd3d6414189 (patch)
treecd262beed7fd28a20f708fdb7889d6c5d55f39d5
parentb9d97328e27b9272ed2ff2ad18de61aa1bf12af8 (diff)
vmlinux.lds.h update
Updated after review by Tim Abbott. - Use HEAD_TEXT_SECTION - Drop use of section-names.h and delete file - Introduce EXIT_CALL Deleting section-names.h required a few simple updates of init.h Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Tim Abbott <tabbott@ksplice.com>
-rw-r--r--include/asm-generic/vmlinux.lds.h17
-rw-r--r--include/linux/init.h4
-rw-r--r--include/linux/section-names.h6
3 files changed, 11 insertions, 16 deletions
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index fba42236e94..7381f701f3f 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -12,7 +12,7 @@
* {
* . = START;
* __init_begin = .;
- * HEAD_SECTION
+ * HEAD_TEXT_SECTION
* INIT_TEXT_SECTION(PAGE_SIZE)
* INIT_DATA_SECTION(...)
* PERCPU(PAGE_SIZE)
@@ -38,7 +38,7 @@
* /DISCARD/ : {
* EXIT_TEXT
* EXIT_DATA
- * *(.exitcall.exit)
+ * EXIT_CALL
* }
* STABS_DEBUG
* DWARF_DEBUG
@@ -52,7 +52,6 @@
* Examples are: [__initramfs_start, __initramfs_end] for initramfs and
* [__nosave_begin, __nosave_end] for the nosave data
*/
- #include <linux/section-names.h>
#ifndef LOAD_OFFSET
#define LOAD_OFFSET 0
@@ -414,9 +413,9 @@
#endif
/* Section used for early init (in .S files) */
-#define HEAD_TEXT *(HEAD_TEXT_SECTION)
+#define HEAD_TEXT *(.head.text)
-#define HEAD_SECTION \
+#define HEAD_TEXT_SECTION \
.head.text : AT(ADDR(.head.text) - LOAD_OFFSET) { \
HEAD_TEXT \
}
@@ -473,6 +472,9 @@
CPU_DISCARD(exit.text) \
MEM_DISCARD(exit.text)
+#define EXIT_CALL \
+ *(.exitcall.exit)
+
/*
* bss (Block Started by Symbol) - uninitialized data
* zeroed during startup
@@ -692,7 +694,7 @@
* NOSAVE_DATA starts and ends with a PAGE_SIZE alignment which
* matches the requirment of PAGE_ALIGNED_DATA.
*
-/* use 0 as page_align if page_aligned data is not used */
+ * use 0 as page_align if page_aligned data is not used */
#define RW_DATA_SECTION(cacheline, nosave, pagealigned, inittask) \
. = ALIGN(PAGE_SIZE); \
.data : AT(ADDR(.data) - LOAD_OFFSET) { \
@@ -726,4 +728,5 @@
#define BSS_SECTION(sbss_align, bss_align) \
SBSS \
BSS(bss_align) \
- . = ALIGN(4); \
+ . = ALIGN(4);
+
diff --git a/include/linux/init.h b/include/linux/init.h
index 9f70c9f25d4..b2189803f19 100644
--- a/include/linux/init.h
+++ b/include/linux/init.h
@@ -2,8 +2,6 @@
#define _LINUX_INIT_H
#include <linux/compiler.h>
-#include <linux/section-names.h>
-#include <linux/stringify.h>
/* These macros are used to mark some functions or
* initialized data (doesn't apply to uninitialized data)
@@ -101,7 +99,7 @@
#define __memexitconst __section(.memexit.rodata)
/* For assembly routines */
-#define __HEAD .section __stringify(HEAD_TEXT_SECTION),"ax"
+#define __HEAD .section ".head.text","ax"
#define __INIT .section ".init.text","ax"
#define __FINIT .previous
diff --git a/include/linux/section-names.h b/include/linux/section-names.h
deleted file mode 100644
index c956f4eb2ad..00000000000
--- a/include/linux/section-names.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef __LINUX_SECTION_NAMES_H
-#define __LINUX_SECTION_NAMES_H
-
-#define HEAD_TEXT_SECTION .head.text
-
-#endif /* !__LINUX_SECTION_NAMES_H */