|Last change on this file since 21081 was 21081, checked in by juhosg, 6 years ago|
|File size: 1.3 KB|
um: remove PAGE_SIZE alignment in linker script causing kernel segfault. The linker script cleanup that I did in commit 5d150a97f9391f5bcd7ba0d59d7a11c3de3cea80 accidentally introduced an ALIGN(PAGE_SIZE) when converting to use INIT_TEXT_SECTION; Richard Weinberger reported that this causes the kernel to segfault with CONFIG_STATIC_LINK=y. I'm not certain why this extra alignment is a problem, but it seems likely it is because previously __init_begin = _stext = _text = _sinittext and with the extra ALIGN(PAGE_SIZE), _sinittext becomes different from the rest. So there is likely a bug here where something is assuming that _sinittext is the same as one of those other symbols. But reverting the accidental change fixes the regression, so it seems worth committing that now. Signed-off-by: Tim Abbott <firstname.lastname@example.org> Reported-by: richard -rw- weinberger <email@example.com> Cc: Jeff Dike <firstname.lastname@example.org> Cc: email@example.com --- arch/um/kernel/uml.lds.S | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
a b SECTIONS 22 22 _text = .; 23 23 _stext = .; 24 24 __init_begin = .; 25 INIT_TEXT_SECTION( PAGE_SIZE) 25 INIT_TEXT_SECTION() 26 26 . = ALIGN(PAGE_SIZE); 27 27 28 28 .text :
Note: See TracBrowser for help on using the repository browser.