[PATCH v2] RISC-V: fix sifive and thead section mismatches in errata

Randy Dunlap rdunlap at infradead.org
Sat Apr 29 10:58:48 PDT 2023



On 4/29/23 10:48, Evan Green wrote:
> On Sat, Apr 29, 2023 at 10:24 AM Conor Dooley <conor at kernel.org> wrote:
>>
>> On Sat, Apr 29, 2023 at 10:21:39AM -0700, Evan Green wrote:
>>> On Sat, Apr 29, 2023 at 8:52 AM Randy Dunlap <rdunlap at infradead.org> wrote:
>>>>
>>>> When CONFIG_MODULES is set, __init_or_module becomes <empty>, but when
>>>> CONFIG_MODULES is not set, __init_or_module becomes __init.
>>>> In the latter case, it causes section mismatch warnings:
>>>>
>>>> WARNING: modpost: vmlinux.o: section mismatch in reference: riscv_fill_cpu_mfr_info (section: .text) -> sifive_errata_patch_func (section: .init.text)
>>>> WARNING: modpost: vmlinux.o: section mismatch in reference: riscv_fill_cpu_mfr_info (section: .text) -> thead_errata_patch_func (section: .init.text)
>>>>
>>>> Fixes: bb3f89487fd9 ("RISC-V: hwprobe: Remove __init on probe_vendor_features()")
>>>> Signed-off-by: Randy Dunlap <rdunlap at infradead.org>
>>>> Cc: Heiko Stuebner <heiko at sntech.de>
>>>> Cc: Paul Walmsley <paul.walmsley at sifive.com>
>>>> Cc: Palmer Dabbelt <palmer at dabbelt.com>
>>>> Cc: Albert Ou <aou at eecs.berkeley.edu>
>>>> Cc: linux-riscv at lists.infradead.org
>>>> Cc: Conor Dooley <conor at kernel.org>
>>>> Cc: Evan Green <evan at rivosinc.com>
>>>> ---
>>>
>>> Thanks, Randy. I'm confused at how I didn't see that when I made the
>>> original fix. I feel like repro of these section mismatch errors
>>> depend on some other factor I'm not understanding. In any case:
>>
>> Perhaps you had a cut-down config that did not enable either of the
>> relevant ARCH_ options to get those errata compiled?
> 
> It was weird, my original "fix" (the one listed in this Fixes tag) was
> needed because while the hwprobe series was clean on Palmer's branch,
> it generated a "section mismatch" on linux-next. As noted here, it was
> only with !CONFIG_MODULES, so I explicitly remember generating that
> config and checking it on linux-next to generate this "fix", and it
> came out clean. It's like the robots are getting smarter.
> -Evan

I observed the problem in 8 out of 20 randconfig builds,
using linux-next 20230427.

-- 
~Randy



More information about the linux-riscv mailing list