Without the attached patch, the current GIT trees fail to build for me with error: ld: .tmp_vmlinux1: section `.text' can't be allocated in segment 0 ld: final link failed: Bad value This is with binutils v2.17.50.20070804 and is apparently due to the recent --build-id changes (see http://www.uwsg.indiana.edu/hypermail/linux/kernel/0707.2/3490.html). I may not have picked the best possible place to stick the NOTES macro (according to Roland, it should only be a few read-only bytes that are hardly ever read), but at least the kernel builds again and it even seems to boot (on my zx2000, anyhow). ;-) Thanks to HJ Lu for his help in tracking down this bug. --david -- Mosberger Consulting LLC, http://www.mosberger-consulting.com/
[IA64] Add NOTES to linker script such that the kernel can be built with recent versions of binutils. Without this patch, final link fails with this error: ld: .tmp_vmlinux1: section `.text' can't be allocated in segment 0 ld: final link failed: Bad value This error is due to the fact that the --build-id option is used with newer linkers to include a .notes section on the kernel, but without the NOTES macro, that section won't be included in the kernel which then leads to the above error message. Signed-off-by: David Mosberger-Tang <dmosberger@xxxxxxxxx> diff --git a/arch/ia64/kernel/vmlinux.lds.S b/arch/ia64/kernel/vmlinux.lds.S index 83e8067..71eb550 100644 --- a/arch/ia64/kernel/vmlinux.lds.S +++ b/arch/ia64/kernel/vmlinux.lds.S @@ -62,6 +62,8 @@ SECTIONS /* Read-only data */ + NOTES + /* Exception table */ . = ALIGN(16); __ex_table : AT(ADDR(__ex_table) - LOAD_OFFSET)
![]() |