lkml.org 
[lkml]   [2020]   [Jul]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] serial: sh-sci: Initialize spinlock for uart console
Hi Geert,

On Thu, Jul 2, 2020 at 10:23 AM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>
> Hi Prabhakar,
>
> On Wed, Jul 1, 2020 at 7:28 PM Lad, Prabhakar
> <prabhakar.csengg@gmail.com> wrote:
> > On Wed, Jul 1, 2020 at 6:17 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > > On Wed, Jul 1, 2020 at 5:42 PM Lad Prabhakar
> > > <prabhakar.mahadev-lad.rj@bp.renesas.com> wrote:
> > > > serial core expects the spinlock to be initialized by the controller
> > > > driver for serial console, this patch makes sure the spinlock is
> > > > initialized, fixing the below issue:
> > > >
> > > > [ 0.865928] BUG: spinlock bad magic on CPU#0, swapper/0/1
> > > > [ 0.865945] lock: sci_ports+0x0/0x4c80, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
> > > > [ 0.865955] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.8.0-rc1+ #112
> > > > [ 0.865961] Hardware name: HopeRun HiHope RZ/G2H with sub board (DT)
> > > > [ 0.865968] Call trace:
> > > > [ 0.865979] dump_backtrace+0x0/0x1d8
> > > > [ 0.865985] show_stack+0x14/0x20
> > > > [ 0.865996] dump_stack+0xe8/0x130
> > > > [ 0.866006] spin_dump+0x6c/0x88
> > > > [ 0.866012] do_raw_spin_lock+0xb0/0xf8
> > > > [ 0.866023] _raw_spin_lock_irqsave+0x80/0xa0
> > > > [ 0.866032] uart_add_one_port+0x3a4/0x4e0
> > > > [ 0.866039] sci_probe+0x504/0x7c8
> > > > [ 0.866048] platform_drv_probe+0x50/0xa0
> > > > [ 0.866059] really_probe+0xdc/0x330
> > > > [ 0.866066] driver_probe_device+0x58/0xb8
> > > > [ 0.866072] device_driver_attach+0x6c/0x90
> > > > [ 0.866078] __driver_attach+0x88/0xd0
> > > > [ 0.866085] bus_for_each_dev+0x74/0xc8
> > > > [ 0.866091] driver_attach+0x20/0x28
> > > > [ 0.866098] bus_add_driver+0x14c/0x1f8
> > > > [ 0.866104] driver_register+0x60/0x110
> > > > [ 0.866109] __platform_driver_register+0x40/0x48
> > > > [ 0.866119] sci_init+0x2c/0x34
> > > > [ 0.866127] do_one_initcall+0x88/0x428
> > > > [ 0.866137] kernel_init_freeable+0x2c0/0x328
> > > > [ 0.866143] kernel_init+0x10/0x108
> > > > [ 0.866150] ret_from_fork+0x10/0x18
> > >
> > > Interesting...
> > >
> > > How can I reproduce that? I do have CONFIG_DEBUG_SPINLOCK=y.
> > > I'm wondering why haven't we seen this before...
> > >
> > I have attached .config for your reference.
>
> Thank you!
>
> I gave it a try with v5.8-rc1 on Salvator-XS with R-Car H3 ES2.0.
> However, I couldn't reproduce the issue.
> Does it happen on that specific board only? Is this serdev-related?
> Note that I had to disable CONFIG_EXTRA_FIRMWARE, as I don't have the
> firmware blobs it referenced. Do I need them to trigger the issue?
> As the .config has a few non-upstream options, do you have any patches
> applied that might impact the issue?
>
Can't think of any patches that might cause an issue, most of it are
just the DT's and config additions. Nor do firmware blobs should
affect it. I'll try and reproduce it on M3N and get back to you.

Cheers,
--Prabhakar

> Thanks again!
>
> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@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

\
 
 \ /
  Last update: 2020-07-02 12:50    [W:0.047 / U:0.568 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site