warning: allocated section `.data_nosave' not in segment
Sean MacLennan
smaclennan at pikatech.com
Tue Sep 29 01:53:16 EST 2009
I looked into it some more.... the patch converts this section:
. = ALIGN(PAGE_SIZE);
.data_nosave : AT(ADDR(.data_nosave) - LOAD_OFFSET) {
__nosave_begin = .;
*(.data.nosave)
. = ALIGN(PAGE_SIZE);
__nosave_end = .;
}
to:
.data_nosave : AT(ADDR(.data_nosave) - LOAD_OFFSET) {
NOSAVE_DATA
}
If you expand the NOSAVE_DATA macro, you get:
.data_nosave : AT(ADDR(.data_nosave) - LOAD_OFFSET) {
. = ALIGN(PAGE_SIZE);
VMLINUX_SYMBOL(__nosave_begin) = .;
*(.data.nosave)
. = ALIGN(PAGE_SIZE);
VMLINUX_SYMBOL(__nosave_end) = .;
}
If you ignore the VMLINUX_SYMBOL, the only difference is moving the
ALIGN inside the brackets. If I move the ALIGN back where it was, then
the warning goes away.
But other sections moved the ALIGN without an issue. Could it be a
compiler problem? We are using version 4.0.0 (DENX ELDK 4.1 4.0.0).
Cheers,
Sean
More information about the Linuxppc-dev
mailing list