Skip to content

Commit

Permalink
[PATCH] ppc32: discard *.exit.text and *.exit.data sections
Browse files Browse the repository at this point in the history
Discard *.exit.text sections on runtime.  We cannot do this on link time
because of the way BUG macros are implemented.  If "__exit function" calls
one of those macros, __bug_table section will reference this function.
This is similar to ".altinstructions" situation on i386.

*.exit.data seems to be OK in this respect and is discarded on link
time.

Signed-off-by: Eugene Surovegin <ebs@ebshome.net>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Acked-by: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Tom Rini authored and Linus Torvalds committed Sep 13, 2005
1 parent 5b952b3 commit 6a00cbf
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions arch/ppc/kernel/vmlinux.lds.S
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,9 @@ SECTIONS
*(.init.text)
_einittext = .;
}
/* .exit.text is discarded at runtime, not link time,
to deal with references from __bug_table */
.exit.text : { *(.exit.text) }
.init.data : {
*(.init.data);
__vtop_table_begin = .;
Expand Down Expand Up @@ -190,5 +193,6 @@ SECTIONS
/* Sections to be discarded. */
/DISCARD/ : {
*(.exitcall.exit)
*(.exit.data)
}
}

0 comments on commit 6a00cbf

Please sign in to comment.