* [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
@ 2023-04-29 15:52 Randy Dunlap
2023-04-29 17:21 ` Evan Green
2023-05-01 22:44 ` Palmer Dabbelt
0 siblings, 2 replies; 10+ messages in thread
From: Randy Dunlap @ 2023-04-29 15:52 UTC (permalink / raw)
To: linux-kernel
Cc: Randy Dunlap, Heiko Stuebner, Paul Walmsley, Palmer Dabbelt,
Albert Ou, linux-riscv, Conor Dooley, Evan Green
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@infradead.org>
Cc: Heiko Stuebner <heiko@sntech.de>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: linux-riscv@lists.infradead.org
Cc: Conor Dooley <conor@kernel.org>
Cc: Evan Green <evan@rivosinc.com>
---
v2: use corrected Fixes: commit info (thanks Conor)
arch/riscv/errata/sifive/errata.c | 8 +++-----
arch/riscv/errata/thead/errata.c | 6 +++---
2 files changed, 6 insertions(+), 8 deletions(-)
diff -- a/arch/riscv/errata/sifive/errata.c b/arch/riscv/errata/sifive/errata.c
--- a/arch/riscv/errata/sifive/errata.c
+++ b/arch/riscv/errata/sifive/errata.c
@@ -82,11 +82,9 @@ static void __init_or_module warn_miss_e
pr_warn("----------------------------------------------------------------\n");
}
-void __init_or_module sifive_errata_patch_func(struct alt_entry *begin,
- struct alt_entry *end,
- unsigned long archid,
- unsigned long impid,
- unsigned int stage)
+void sifive_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
+ unsigned long archid, unsigned long impid,
+ unsigned int stage)
{
struct alt_entry *alt;
u32 cpu_req_errata;
diff -- a/arch/riscv/errata/thead/errata.c b/arch/riscv/errata/thead/errata.c
--- a/arch/riscv/errata/thead/errata.c
+++ b/arch/riscv/errata/thead/errata.c
@@ -83,9 +83,9 @@ static u32 thead_errata_probe(unsigned i
return cpu_req_errata;
}
-void __init_or_module thead_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
- unsigned long archid, unsigned long impid,
- unsigned int stage)
+void thead_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
+ unsigned long archid, unsigned long impid,
+ unsigned int stage)
{
struct alt_entry *alt;
u32 cpu_req_errata = thead_errata_probe(stage, archid, impid);
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-04-29 15:52 [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata Randy Dunlap
@ 2023-04-29 17:21 ` Evan Green
2023-04-29 17:24 ` Conor Dooley
2023-05-01 22:44 ` Palmer Dabbelt
1 sibling, 1 reply; 10+ messages in thread
From: Evan Green @ 2023-04-29 17:21 UTC (permalink / raw)
To: Randy Dunlap
Cc: linux-kernel, Heiko Stuebner, Paul Walmsley, Palmer Dabbelt,
Albert Ou, linux-riscv, Conor Dooley
On Sat, Apr 29, 2023 at 8:52 AM Randy Dunlap <rdunlap@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@infradead.org>
> Cc: Heiko Stuebner <heiko@sntech.de>
> Cc: Paul Walmsley <paul.walmsley@sifive.com>
> Cc: Palmer Dabbelt <palmer@dabbelt.com>
> Cc: Albert Ou <aou@eecs.berkeley.edu>
> Cc: linux-riscv@lists.infradead.org
> Cc: Conor Dooley <conor@kernel.org>
> Cc: Evan Green <evan@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:
Reviewed-by: Evan Green <evan@rivosinc.com>
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-04-29 17:21 ` Evan Green
@ 2023-04-29 17:24 ` Conor Dooley
2023-04-29 17:48 ` Evan Green
0 siblings, 1 reply; 10+ messages in thread
From: Conor Dooley @ 2023-04-29 17:24 UTC (permalink / raw)
To: Evan Green
Cc: Randy Dunlap, linux-kernel, Heiko Stuebner, Paul Walmsley,
Palmer Dabbelt, Albert Ou, linux-riscv
[-- Attachment #1.1: Type: text/plain, Size: 1583 bytes --]
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@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@infradead.org>
> > Cc: Heiko Stuebner <heiko@sntech.de>
> > Cc: Paul Walmsley <paul.walmsley@sifive.com>
> > Cc: Palmer Dabbelt <palmer@dabbelt.com>
> > Cc: Albert Ou <aou@eecs.berkeley.edu>
> > Cc: linux-riscv@lists.infradead.org
> > Cc: Conor Dooley <conor@kernel.org>
> > Cc: Evan Green <evan@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?
Thanks for changing the fixes tag Randy,
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Thanks,
Conor.
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 161 bytes --]
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-04-29 17:24 ` Conor Dooley
@ 2023-04-29 17:48 ` Evan Green
2023-04-29 17:58 ` Randy Dunlap
0 siblings, 1 reply; 10+ messages in thread
From: Evan Green @ 2023-04-29 17:48 UTC (permalink / raw)
To: Conor Dooley
Cc: Randy Dunlap, linux-kernel, Heiko Stuebner, Paul Walmsley,
Palmer Dabbelt, Albert Ou, linux-riscv
On Sat, Apr 29, 2023 at 10:24 AM Conor Dooley <conor@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@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@infradead.org>
> > > Cc: Heiko Stuebner <heiko@sntech.de>
> > > Cc: Paul Walmsley <paul.walmsley@sifive.com>
> > > Cc: Palmer Dabbelt <palmer@dabbelt.com>
> > > Cc: Albert Ou <aou@eecs.berkeley.edu>
> > > Cc: linux-riscv@lists.infradead.org
> > > Cc: Conor Dooley <conor@kernel.org>
> > > Cc: Evan Green <evan@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
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-04-29 17:48 ` Evan Green
@ 2023-04-29 17:58 ` Randy Dunlap
2023-04-29 19:06 ` Evan Green
0 siblings, 1 reply; 10+ messages in thread
From: Randy Dunlap @ 2023-04-29 17:58 UTC (permalink / raw)
To: Evan Green, Conor Dooley
Cc: linux-kernel, Heiko Stuebner, Paul Walmsley, Palmer Dabbelt,
Albert Ou, linux-riscv
On 4/29/23 10:48, Evan Green wrote:
> On Sat, Apr 29, 2023 at 10:24 AM Conor Dooley <conor@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@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@infradead.org>
>>>> Cc: Heiko Stuebner <heiko@sntech.de>
>>>> Cc: Paul Walmsley <paul.walmsley@sifive.com>
>>>> Cc: Palmer Dabbelt <palmer@dabbelt.com>
>>>> Cc: Albert Ou <aou@eecs.berkeley.edu>
>>>> Cc: linux-riscv@lists.infradead.org
>>>> Cc: Conor Dooley <conor@kernel.org>
>>>> Cc: Evan Green <evan@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
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-04-29 17:58 ` Randy Dunlap
@ 2023-04-29 19:06 ` Evan Green
2023-04-29 19:11 ` Conor Dooley
0 siblings, 1 reply; 10+ messages in thread
From: Evan Green @ 2023-04-29 19:06 UTC (permalink / raw)
To: Randy Dunlap
Cc: Conor Dooley, linux-kernel, Heiko Stuebner, Paul Walmsley,
Palmer Dabbelt, Albert Ou, linux-riscv
On Sat, Apr 29, 2023 at 10:58 AM Randy Dunlap <rdunlap@infradead.org> wrote:
>
>
>
> On 4/29/23 10:48, Evan Green wrote:
> > On Sat, Apr 29, 2023 at 10:24 AM Conor Dooley <conor@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@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@infradead.org>
> >>>> Cc: Heiko Stuebner <heiko@sntech.de>
> >>>> Cc: Paul Walmsley <paul.walmsley@sifive.com>
> >>>> Cc: Palmer Dabbelt <palmer@dabbelt.com>
> >>>> Cc: Albert Ou <aou@eecs.berkeley.edu>
> >>>> Cc: linux-riscv@lists.infradead.org
> >>>> Cc: Conor Dooley <conor@kernel.org>
> >>>> Cc: Evan Green <evan@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.
Oh interesting, so not the stock k210_nommu defconfig. That makes me
feel a little better at least.
-Evan
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-04-29 19:06 ` Evan Green
@ 2023-04-29 19:11 ` Conor Dooley
2023-05-01 15:26 ` Evan Green
0 siblings, 1 reply; 10+ messages in thread
From: Conor Dooley @ 2023-04-29 19:11 UTC (permalink / raw)
To: Evan Green
Cc: Randy Dunlap, linux-kernel, Heiko Stuebner, Paul Walmsley,
Palmer Dabbelt, Albert Ou, linux-riscv
[-- Attachment #1.1: Type: text/plain, Size: 2819 bytes --]
On Sat, Apr 29, 2023 at 12:06:19PM -0700, Evan Green wrote:
> On Sat, Apr 29, 2023 at 10:58 AM Randy Dunlap <rdunlap@infradead.org> wrote:
> >
> >
> >
> > On 4/29/23 10:48, Evan Green wrote:
> > > On Sat, Apr 29, 2023 at 10:24 AM Conor Dooley <conor@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@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@infradead.org>
> > >>>> Cc: Heiko Stuebner <heiko@sntech.de>
> > >>>> Cc: Paul Walmsley <paul.walmsley@sifive.com>
> > >>>> Cc: Palmer Dabbelt <palmer@dabbelt.com>
> > >>>> Cc: Albert Ou <aou@eecs.berkeley.edu>
> > >>>> Cc: linux-riscv@lists.infradead.org
> > >>>> Cc: Conor Dooley <conor@kernel.org>
> > >>>> Cc: Evan Green <evan@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.
>
> Oh interesting, so not the stock k210_nommu defconfig. That makes me
> feel a little better at least.
Ohh man, that's a pretty bad config to try use (if that's your default)
for build testing stuff. The k210_mmu defconfig doesn't enable anything
other than SOC_CANAAN.
I could reproduce Randy's issue on defconfig w/ CONFIG_MODULES disabled.
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 161 bytes --]
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-04-29 19:11 ` Conor Dooley
@ 2023-05-01 15:26 ` Evan Green
2023-05-01 15:37 ` Conor Dooley
0 siblings, 1 reply; 10+ messages in thread
From: Evan Green @ 2023-05-01 15:26 UTC (permalink / raw)
To: Conor Dooley
Cc: Randy Dunlap, linux-kernel, Heiko Stuebner, Paul Walmsley,
Palmer Dabbelt, Albert Ou, linux-riscv
On Sat, Apr 29, 2023 at 12:11 PM Conor Dooley <conor@kernel.org> wrote:
>
> On Sat, Apr 29, 2023 at 12:06:19PM -0700, Evan Green wrote:
> > On Sat, Apr 29, 2023 at 10:58 AM Randy Dunlap <rdunlap@infradead.org> wrote:
> > >
> > >
> > >
> > > On 4/29/23 10:48, Evan Green wrote:
> > > > On Sat, Apr 29, 2023 at 10:24 AM Conor Dooley <conor@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@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@infradead.org>
> > > >>>> Cc: Heiko Stuebner <heiko@sntech.de>
> > > >>>> Cc: Paul Walmsley <paul.walmsley@sifive.com>
> > > >>>> Cc: Palmer Dabbelt <palmer@dabbelt.com>
> > > >>>> Cc: Albert Ou <aou@eecs.berkeley.edu>
> > > >>>> Cc: linux-riscv@lists.infradead.org
> > > >>>> Cc: Conor Dooley <conor@kernel.org>
> > > >>>> Cc: Evan Green <evan@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.
> >
> > Oh interesting, so not the stock k210_nommu defconfig. That makes me
> > feel a little better at least.
>
> Ohh man, that's a pretty bad config to try use (if that's your default)
> for build testing stuff. The k210_mmu defconfig doesn't enable anything
> other than SOC_CANAAN.
> I could reproduce Randy's issue on defconfig w/ CONFIG_MODULES disabled.
That's the one that caught me before, so I remembered it as being
"different". I'll try what you describe above next time I'm hunting
for section mismatches.
-Evan
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-05-01 15:26 ` Evan Green
@ 2023-05-01 15:37 ` Conor Dooley
0 siblings, 0 replies; 10+ messages in thread
From: Conor Dooley @ 2023-05-01 15:37 UTC (permalink / raw)
To: Evan Green
Cc: Randy Dunlap, linux-kernel, Heiko Stuebner, Paul Walmsley,
Palmer Dabbelt, Albert Ou, linux-riscv
[-- Attachment #1.1: Type: text/plain, Size: 824 bytes --]
On Mon, May 01, 2023 at 08:26:19AM -0700, Evan Green wrote:
> On Sat, Apr 29, 2023 at 12:11 PM Conor Dooley <conor@kernel.org> wrote:
> > Ohh man, that's a pretty bad config to try use (if that's your default)
> > for build testing stuff. The k210_mmu defconfig doesn't enable anything
> > other than SOC_CANAAN.
> > I could reproduce Randy's issue on defconfig w/ CONFIG_MODULES disabled.
>
> That's the one that caught me before, so I remembered it as being
> "different". I'll try what you describe above next time I'm hunting
> for section mismatches.
By nature of being nommu with lots of stuff disabled, it is a good niche
config to test - the nommu stuff mostly gets forgotten about..
On the other hand, it does skip the errata handling stuff which is what
caught us out here.
Cheers,
Conor.
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 161 bytes --]
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata
2023-04-29 15:52 [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata Randy Dunlap
2023-04-29 17:21 ` Evan Green
@ 2023-05-01 22:44 ` Palmer Dabbelt
1 sibling, 0 replies; 10+ messages in thread
From: Palmer Dabbelt @ 2023-05-01 22:44 UTC (permalink / raw)
To: linux-kernel, Randy Dunlap
Cc: Heiko Stuebner, Paul Walmsley, Palmer Dabbelt, Albert Ou,
linux-riscv, Conor Dooley, Evan Green
On Sat, 29 Apr 2023 08:52:47 -0700, Randy Dunlap 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)
>
> [...]
Applied, thanks!
[1/1] RISC-V: fix sifive and thead section mismatches in errata
https://git.kernel.org/palmer/c/a2a58b5ca124
Best regards,
--
Palmer Dabbelt <palmer@rivosinc.com>
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2023-05-02 5:49 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-29 15:52 [PATCH v2] RISC-V: fix sifive and thead section mismatches in errata Randy Dunlap
2023-04-29 17:21 ` Evan Green
2023-04-29 17:24 ` Conor Dooley
2023-04-29 17:48 ` Evan Green
2023-04-29 17:58 ` Randy Dunlap
2023-04-29 19:06 ` Evan Green
2023-04-29 19:11 ` Conor Dooley
2023-05-01 15:26 ` Evan Green
2023-05-01 15:37 ` Conor Dooley
2023-05-01 22:44 ` Palmer Dabbelt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox