Skip to content

Commit

Permalink
parisc: fix unwind with recent gcc versions
Browse files Browse the repository at this point in the history
kernel unwinding is broken with gcc >= 4.x.  Part of the problem is that
binutils seems very sensitive to where the unwind information is stored.

Signed-off-by: Helge Deller <[email protected]>
Signed-off-by: Kyle McMartin <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
hdeller authored and torvalds committed Nov 30, 2009
1 parent a8a8a66 commit 33a932d
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 4 deletions.
2 changes: 1 addition & 1 deletion arch/parisc/kernel/unwind.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
#define dbg(x...)
#endif

#define KERNEL_START (KERNEL_BINARY_TEXT_START - 0x1000)
#define KERNEL_START (KERNEL_BINARY_TEXT_START)

extern struct unwind_table_entry __start___unwind[];
extern struct unwind_table_entry __stop___unwind[];
Expand Down
6 changes: 3 additions & 3 deletions arch/parisc/kernel/vmlinux.lds.S
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,6 @@ SECTIONS
*/
. = ALIGN(PAGE_SIZE);
data_start = .;
EXCEPTION_TABLE(16)

NOTES

/* unwind info */
.PARISC.unwind : {
Expand All @@ -89,6 +86,9 @@ SECTIONS
__stop___unwind = .;
}

EXCEPTION_TABLE(16)
NOTES

/* Data */
RW_DATA_SECTION(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE)

Expand Down

0 comments on commit 33a932d

Please sign in to comment.