On Wed, Jan 06, 2021 at 08:08:19PM +0000, Alexander Lobakin wrote:
> Discard GNU attributes at link time as kernel doesn't use it at all.
> Solves a dozen of the following ld warnings (one per every file):
> 
> mips-alpine-linux-musl-ld: warning: orphan section `.gnu.attributes'
> from `arch/mips/kernel/head.o' being placed in section
> `.gnu.attributes'
> mips-alpine-linux-musl-ld: warning: orphan section `.gnu.attributes'
> from `init/main.o' being placed in section `.gnu.attributes'
> 
> Misc: sort DISCARDS section entries alphabetically.

Hmm, I wonder what is causing the appearance of .eh_frame? With help I
tracked down all the causes of this on x86, arm, and arm64, so that's
why it's not in the asm-generic DISCARDS section. I suspect this could
be cleaned up for mips too?

Similarly for .gnu.attributes. What is generating that? (Or, more
specifically, why is it both being generated AND discarded?)

-Kees

> 
> Signed-off-by: Alexander Lobakin <aloba...@pm.me>
> ---
>  arch/mips/kernel/vmlinux.lds.S | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/mips/kernel/vmlinux.lds.S b/arch/mips/kernel/vmlinux.lds.S
> index 83e27a181206..5d6563970ab2 100644
> --- a/arch/mips/kernel/vmlinux.lds.S
> +++ b/arch/mips/kernel/vmlinux.lds.S
> @@ -221,9 +221,10 @@ SECTIONS
>               /* ABI crap starts here */
>               *(.MIPS.abiflags)
>               *(.MIPS.options)
> +             *(.eh_frame)
> +             *(.gnu.attributes)
>               *(.options)
>               *(.pdr)
>               *(.reginfo)
> -             *(.eh_frame)
>       }
>  }
> -- 
> 2.30.0
> 
> 

-- 
Kees Cook

Reply via email to