lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87lgdvbwp8.fsf@concordia.ellerman.id.au>
Date:   Tue, 10 Apr 2018 12:51:31 +1000
From:   Michael Ellerman <mpe@...erman.id.au>
To:     Mauricio Faria de Oliveira <mauricfo@...ux.vnet.ibm.com>,
        linux-kernel@...r.kernel.org, jeyu@...nel.org
Cc:     jeyu@...hat.com, akpm@...ux-foundation.org, npiggin@...il.com,
        linuxppc-dev@...ts.ozlabs.org
Subject: Re: [PATCH v3] powerpc/64: Fix section mismatch warnings for early boot symbols

Mauricio Faria de Oliveira <mauricfo@...ux.vnet.ibm.com> writes:
> Some of the boot code located at the start of kernel text is "init"
> class, in that it only runs at boot time, however marking it as normal
> init code is problematic because that puts it into a different section
> located at the very end of kernel text.
>
> e.g., in case the TOC is not set up, we may not be able to tolerate a
> branch trampoline to reach the init function.
>
> Credits: code and message are based on 2016 patch by Nicholas Piggin,
> and slightly modified so not to rename the powerpc code/symbol names.
>
>     Subject: [PATCH] powerpc/64: quieten section mismatch warnings
>     From: Nicholas Piggin <npiggin at gmail.com>
>     Date: Fri Dec 23 00:14:19 AEDT 2016
>
> This resolves the following section mismatch warnings:
>
>     WARNING: vmlinux.o(.text+0x2fa8): Section mismatch in reference from the variable __boot_from_prom to the function .init.text:prom_init()
>     The function __boot_from_prom() references
>     the function __init prom_init().
>     This is often because __boot_from_prom lacks a __init
>     annotation or the annotation of prom_init is wrong.
>
>     WARNING: vmlinux.o(.text+0x3238): Section mismatch in reference from the variable start_here_multiplatform to the function .init.text:early_setup()
>     The function start_here_multiplatform() references
>     the function __init early_setup().
>     This is often because start_here_multiplatform lacks a __init
>     annotation or the annotation of early_setup is wrong.
>
>     WARNING: vmlinux.o(.text+0x326c): Section mismatch in reference from the variable start_here_common to the function .init.text:start_kernel()
>     The function start_here_common() references
>     the function __init start_kernel().
>     This is often because start_here_common lacks a __init
>     annotation or the annotation of start_kernel is wrong.

Thanks for picking this one up.

I hate to be a pain ... but before we merge this and proliferate these
names, I'd like to change the names of some of these early asm
functions. They're terribly named due to historical reasons.

I haven't actually thought of good names yet though :)

I'll try and come up with some and post a patch doing the renames.

cheers

Powered by blists - more mailing lists