On Thu, Apr 30, 2009 at 03:54:09PM -0400, Tim Abbott wrote: > This patch is preparation for replacing most ".data.nosave" in the > kernel with macros, so that the section name can later be changed > without having to touch a lot of the kernel. > > The long-term goal here is to be able to change the kernel's magic > section names to those that are compatible with -ffunction-sections > -fdata-sections. This requires renaming all magic sections with names > of the form ".data.foo". > > Signed-off-by: Tim Abbott <tabbott@xxxxxxx> > Cc: Sam Ravnborg <sam@xxxxxxxxxxxx> > --- > include/asm-generic/vmlinux.lds.h | 7 +++++++ > 1 files changed, 7 insertions(+), 0 deletions(-) > > diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h > index 3d88c87..f5ebd2b 100644 > --- a/include/asm-generic/vmlinux.lds.h > +++ b/include/asm-generic/vmlinux.lds.h > @@ -124,6 +124,13 @@ > . = ALIGN(PAGE_SIZE); \ > *(.bss.page_aligned) > > +#define NOSAVE_DATA \ > + . = ALIGN(PAGE_SIZE); \ > + __nosave_begin = .; \ > + *(.data.nosave) \ > + . = ALIGN(PAGE_SIZE); \ > + __nosave_end = .; > + You need to use: VMLINUX_SYMBOL(__nosave_begin) = .; Otherwise architectures such as m68k wil break as they add a leading underscore. See other symbols that is defined inside vmlinux.lds.h Sam