On 09/24/2018 05:18 PM, Kees Cook wrote: > Avoid copy/paste by defining SECURITY_INIT in terms of SECURITY_INITCALL. > > Cc: Arnd Bergmann <arnd@xxxxxxxx> > Cc: linux-arch@xxxxxxxxxxxxxxx > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> Reviewed-by: John Johansen <john.johansen@xxxxxxxxxxxxx> > --- > include/asm-generic/vmlinux.lds.h | 13 ++++++------- > 1 file changed, 6 insertions(+), 7 deletions(-) > > diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h > index 7b75ff6e2fce..934a45395547 100644 > --- a/include/asm-generic/vmlinux.lds.h > +++ b/include/asm-generic/vmlinux.lds.h > @@ -473,13 +473,6 @@ > #define RODATA RO_DATA_SECTION(4096) > #define RO_DATA(align) RO_DATA_SECTION(align) > > -#define SECURITY_INIT \ > - .security_initcall.init : AT(ADDR(.security_initcall.init) - LOAD_OFFSET) { \ > - __security_initcall_start = .; \ > - KEEP(*(.security_initcall.init)) \ > - __security_initcall_end = .; \ > - } > - > /* > * .text section. Map to function alignment to avoid address changes > * during second ld run in second ld pass when generating System.map > @@ -798,6 +791,12 @@ > KEEP(*(.security_initcall.init)) \ > __security_initcall_end = .; > > +/* Older linker script style for security init. */ > +#define SECURITY_INIT \ > + .security_initcall.init : AT(ADDR(.security_initcall.init) - LOAD_OFFSET) { \ > + SECURITY_INITCALL \ > + } > + > #ifdef CONFIG_BLK_DEV_INITRD > #define INIT_RAM_FS \ > . = ALIGN(4); \ >