Re: [PATCH security-next v3 02/29] vmlinux.lds.h: Avoid copy/paste of security_init section
From: John Johansen
Date: Mon Oct 01 2018 - 17:05:59 EST
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); \
>