[PATCH v3 6/6] RISC-V: Do not use cpumask data structure for hartid bitmap
Geert Uytterhoeven
geert at linux-m68k.org
Tue Jan 25 12:52:23 PST 2022
Hi Atish,
On Tue, Jan 25, 2022 at 9:17 PM Atish Patra <atishp at atishpatra.org> wrote:
> On Tue, Jan 25, 2022 at 12:12 PM Geert Uytterhoeven
> <geert at linux-m68k.org> wrote:
> > On Thu, Jan 20, 2022 at 10:12 AM Atish Patra <atishp at rivosinc.com> wrote:
> > > Currently, SBI APIs accept a hartmask that is generated from struct
> > > cpumask. Cpumask data structure can hold upto NR_CPUs value. Thus, it
> > > is not the correct data structure for hartids as it can be higher
> > > than NR_CPUs for platforms with sparse or discontguous hartids.
> > >
> > > Remove all association between hartid mask and struct cpumask.
> > >
> > > Reviewed-by: Anup Patel <anup at brainfault.org> (For Linux RISC-V changes)
> > > Acked-by: Anup Patel <anup at brainfault.org> (For KVM RISC-V changes)
> > > Signed-off-by: Atish Patra <atishp at rivosinc.com>
> >
> > Thanks for your patch, which is now commit 26fb751ca37846c9 ("RISC-V:
> > Do not use cpumask data structure for hartid bitmap") in v5.17-rc1.
> >
> > I am having an issue with random userspace SEGVs on Starlight Beta
> > (which needs out-of-tree patches). It doesn't always manifest
> > itself immediately, so it took a while to bisect, but I suspect the
> > above commit to be the culprit.
>
> I have never seen one before during my testing. How frequently do you see them?
> Does it happen while running anything or just idle user space results
> in SEGVs randomly.
Sometimes they happen during startup (lots of failures from systemd),
sometimes they happen later, during interactive work.
Sometimes while idle, and something runs in the background (e.g. mandb).
> Do you have a trace that I can look into ?
# apt update
[ 807.499050] apt[258]: unhandled signal 11 code 0x1 at
0xffffff8300060020 in libapt-pkg.so.6.0.0[3fa49ac000+174000]
[ 807.509548] CPU: 0 PID: 258 Comm: apt Not tainted
5.16.0-starlight-11192-g26fb751ca378-dirty #153
[ 807.518674] Hardware name: BeagleV Starlight Beta (DT)
[ 807.524077] epc : 0000003fa4a47a0a ra : 0000003fa4a479fc sp :
0000003fcb4b39b0
[ 807.531383] gp : 0000002adcef4800 tp : 0000003fa43287b0 t0 :
0000000000000001
[ 807.538603] t1 : 0000000000000009 t2 : 00000000000003ff s0 :
0000000000000000
[ 807.545887] s1 : 0000002adcf3cb60 a0 : 0000000000000003 a1 :
0000000000000000
[ 807.553167] a2 : 0000003fcb4b3a30 a3 : 0000000000000000 a4 :
0000002adcf3cc1c
[ 807.560390] a5 : 0007000300060000 a6 : 0000000000000003 a7 :
1999999999999999
[ 807.567654] s2 : 0000003fcb4b3a28 s3 : 0000000000000002 s4 :
0000003fcb4b3a30
[ 807.575039] s5 : 0000003fa4baa810 s6 : 0000000000000010 s7 :
0000002adcf19a40
[ 807.582363] s8 : 0000003fcb4b4010 s9 : 0000003fa4baa810 s10:
0000003fcb4b3e90
[ 807.589606] s11: 0000003fa4b2a528 t3 : 0000000000000000 t4 :
0000003fa47906a0
[ 807.596891] t5 : 0000000000000005 t6 : ffffffffffffffff
[ 807.602302] status: 0000000200004020 badaddr: ffffff8300060020
cause: 000000000000000d
(-dirty due to Starlight DTS and driver updates)
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
More information about the linux-riscv
mailing list