Skip to content

Commit

Permalink
vmlinux.lds.h update
Browse files Browse the repository at this point in the history
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 <[email protected]>
Cc: Tim Abbott <[email protected]>
  • Loading branch information
sravnborg committed Jun 14, 2009
1 parent b9d9732 commit 7923f90
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 16 deletions.
17 changes: 10 additions & 7 deletions include/asm-generic/vmlinux.lds.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
* {
* . = START;
* __init_begin = .;
* HEAD_SECTION
* HEAD_TEXT_SECTION
* INIT_TEXT_SECTION(PAGE_SIZE)
* INIT_DATA_SECTION(...)
* PERCPU(PAGE_SIZE)
Expand All @@ -38,7 +38,7 @@
* /DISCARD/ : {
* EXIT_TEXT
* EXIT_DATA
* *(.exitcall.exit)
* EXIT_CALL
* }
* STABS_DEBUG
* DWARF_DEBUG
Expand All @@ -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
Expand Down Expand Up @@ -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 \
}
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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) { \
Expand Down Expand Up @@ -726,4 +728,5 @@
#define BSS_SECTION(sbss_align, bss_align) \
SBSS \
BSS(bss_align) \
. = ALIGN(4); \
. = ALIGN(4);

4 changes: 1 addition & 3 deletions include/linux/init.h
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down Expand Up @@ -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

Expand Down
6 changes: 0 additions & 6 deletions include/linux/section-names.h

This file was deleted.

0 comments on commit 7923f90

Please sign in to comment.