Re: [PATCH v4 00/19] Basic clock, reset & device tree support for StarFive JH7110 RISC-V SoC

Tommaso Merciai
2023-03-09T16:50:06Z

On Wed, Mar 08, 2023 at 01:36:41PM +0000, Conor Dooley wrote:
> On Wed, Mar 08, 2023 at 01:28:01PM +0100, Tommaso Merciai wrote:
> > On Tue, Mar 07, 2023 at 06:08:53PM +0800, Hal Feng wrote:
>
> > > The above two methods can fix the problem. Here are my test results.
> > > The VisionFive board can boot up successfully if and only if all above
> > > two applied.
> > > The VisionFive 2 board can boot up successfully if I merge Linus's new
> > > changes.
> >
> > Tested also on my side. Hope this can be helpfull.
> >
> > > Hope your fix will be merged in rc2. Thank you for your reply.
> >
> > Fully agree.
>
> If you only have a VisionFive 2, it shouldn't matter to you, as you
> don't need to fix up any SiFive errata (at the moment at least).
> Linus' fix is already in his tree, so should be in -rc2!
> The fix for the VisionFive was applied to Palmer's RISC-V fixes tree
> last night:
> https://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux.git/commit/?h=fixes&id=bf89b7ee52af5a5944fa3539e86089f72475055b
>
> Thanks,
> Conor.

Hi Conor,
Thanks for the info.
Playing with this series I got the following error:

[ 6.278182] BUG: spinlock bad magic on CPU#0, udevd/136
[ 6.283414] lock: 0xffffffd84135e6c0, .magic: ffffffff, .owner: <none>/-1, .owner_cpu: -1
[ 6.291677] CPU: 0 PID: 136 Comm: udevd Not tainted 6.3.0-rc1-g92569901a7f9-dirty #14
[ 6.299502] Hardware name: StarFive VisionFive 2 v1.3B (DT)
[ 6.305069] Call Trace:
[ 6.307517] [<ffffffff80005530>] dump_backtrace+0x1c/0x24
[ 6.312921] [<ffffffff80844b4e>] show_stack+0x2c/0x38
[ 6.317976] [<ffffffff8085032c>] dump_stack_lvl+0x3c/0x54
[ 6.323377] [<ffffffff80850358>] dump_stack+0x14/0x1c
[ 6.328429] [<ffffffff80845668>] spin_dump+0x64/0x70
[ 6.333394] [<ffffffff80058f26>] do_raw_spin_lock+0xb4/0xf2
[ 6.338970] [<ffffffff80857d04>] _raw_spin_lock+0x1a/0x22
[ 6.344370] [<ffffffff8008153c>] add_timer_on+0x8a/0x132
[ 6.349684] [<ffffffff8084b9fa>] try_to_generate_entropy+0x216/0x278
[ 6.356037] [<ffffffff804ebfdc>] urandom_read_iter+0x40/0xb8
[ 6.361697] [<ffffffff801a1216>] vfs_read+0x17e/0x1f8
[ 6.366752] [<ffffffff801a1986>] ksys_read+0x5e/0xc8
[ 6.371710] [<ffffffff801a19fe>] sys_read+0xe/0x16
[ 6.376503] [<ffffffff8000357a>] ret_from_syscall+0x0/0x2
[ 6.381905] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000007
[ 6.390683] Oops [#1]
[ 6.392956] Modules linked in:
[ 6.396011] CPU: 0 PID: 136 Comm: udevd Not tainted 6.3.0-rc1-g92569901a7f9-dirty #14
[ 6.403835] Hardware name: StarFive VisionFive 2 v1.3B (DT)
[ 6.409401] epc : enqueue_timer+0x1a/0x90
[ 6.413414] ra : add_timer_on+0xe2/0x132
[ 6.417425] epc : ffffffff80080c60 ra : ffffffff80081594 sp : ffffffc8044dbc60
[ 6.424640] gp : ffffffff814ffe50 tp : ffffffd8c171ad00 t0 : 6666666666663c5b
[ 6.431855] t1 : 000000000000005b t2 : 666666666666663c s0 : ffffffc8044dbcc0
[ 6.439070] s1 : ffffffc8044dbd08 a0 : ffffffd84135e6c0 a1 : ffffffc8044dbd08
[ 6.446284] a2 : ffffffffffffffff a3 : 000000003e000000 a4 : 000000000000023e
[ 6.453498] a5 : 000000000000023e a6 : ffffffd84135f930 a7 : 0000000000000038
[ 6.460712] s2 : ffffffd84135e6c0 s3 : 0000000000000040 s4 : ffffffff81501080
[ 6.467926] s5 : ffffffd84135e6c0 s6 : ffffffff815011b8 s7 : ffffffffffffffff
[ 6.475141] s8 : ffffffff81502820 s9 : 0000000000000040 s10: 0000002ab0a49320
[ 6.482355] s11: 0000000000000001 t3 : ffffffff81512e97 t4 : ffffffff81512e97
[ 6.489569] t5 : ffffffff81512e98 t6 : ffffffc8044db948
[ 6.494875] status: 0000000200000100 badaddr: 0000000000000007 cause: 000000000000000f
[ 6.502783] [<ffffffff80080c60>] enqueue_timer+0x1a/0x90
[ 6.508095] [<ffffffff8084b9fa>] try_to_generate_entropy+0x216/0x278
[ 6.514448] [<ffffffff804ebfdc>] urandom_read_iter+0x40/0xb8
[ 6.520107] [<ffffffff801a1216>] vfs_read+0x17e/0x1f8
[ 6.525160] [<ffffffff801a1986>] ksys_read+0x5e/0xc8
[ 6.530126] [<ffffffff801a19fe>] sys_read+0xe/0x16
[ 6.534918] [<ffffffff8000357a>] ret_from_syscall+0x0/0x2
[ 6.540322] Code: 87b2 0813 0805 1613 0037 9832 3603 0008 e190 c211 (e60c) 5613
[ 6.547711] ---[ end trace 0000000000000000 ]---
[ 6.552325] note: udevd[136] exited with irqs disabled
[ 6.557531] note: udevd[136] exited with preempt_count 2

I'm working on top of Linux version 6.3.0-rc1-g92569901a7f.
Did you already see this crash?
Let me know.

Thanks,
Tommaso