lkml.org 
[lkml]   [2022]   [Sep]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: v6.0-rc6 - arm64 / rock960 : kernel panic
Hi


On Sat, Sep 24, 2022 at 8:01 PM Michael Nazzareno Trimarchi
<michael@amarulasolutions.com> wrote:
>
> On Sat, Sep 24, 2022 at 7:58 PM Michael Nazzareno Trimarchi
> <michael@amarulasolutions.com> wrote:
> >
> > Hi Daniel
> >
> > On Sat, Sep 24, 2022 at 7:43 PM Daniel Lezcano
> > <daniel.lezcano@linaro.org> wrote:
> > >
> > > Hi,
> > >
> > > there is a kernel panic on a rock960 board:
> > >
> > > After git bisecting, I have:
> > >
> > > commit 14facbc1871ae15404666747b5319c08e04b875a
> > > Merge: f5c97da8037b 32346491ddf2
> > > Author: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > > Date: Mon Jul 11 08:32:58 2022 +0200
> > >
> > > Merge 5.19-rc6 into char-misc-next
> > >
> > > We need the misc driver fixes in here as well.
> > >
> > > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > >
> > > Any clue?
> >
> > That code receive 3-4 commits for one fix
> >
> > diff --git a/sound/soc/rockchip/rockchip_i2s.c
> > b/sound/soc/rockchip/rockchip_i2s.c
> > index f5f3540a9e18..a32a45b09b03 100644
> > --- a/sound/soc/rockchip/rockchip_i2s.c
> > +++ b/sound/soc/rockchip/rockchip_i2s.c
> > @@ -803,7 +803,7 @@ static int rockchip_i2s_probe(struct platform_device *pdev)
> >
> > i2s->bclk_ratio = 64;
> > i2s->pinctrl = devm_pinctrl_get(&pdev->dev);
> > - if (!IS_ERR(i2s->pinctrl)) {
> > + if (!IS_ERR_OR_NULL(i2s->pinctrl)) {
> > i2s->bclk_on = pinctrl_lookup_state(i2s->pinctrl, "bclk_on");
> > if (!IS_ERR_OR_NULL(i2s->bclk_on)) {
> > i2s->bclk_off =
> > pinctrl_lookup_state(i2s->pinctrl, "bclk_off");
>
> I don't sure if you can get null from there, but you have two
> lookup_state on that function
>

I navigated a bit the code and states->name of pinctrl->state should
be the offset five where you have the panic.

What is not clear is. If we iterate the map and we don't find the node

ret = pinctrl_dt_to_map(p, pctldev);
if (ret < 0) {
kfree(p);
return ERR_PTR(ret);
}

devname = dev_name(dev);

mutex_lock(&pinctrl_maps_mutex);
/* Iterate over the pin control maps to locate the right ones */
for_each_maps(maps_node, i, map) {

Then add_setting is not called and name is not assigned

Michael

> Michael
> >
> > Michael
> >
> > >
> > >
> > > [ 2.377386] Unable to handle kernel NULL pointer dereference at
> > > virtual address 0000000000000005
> > > [ 2.377390] Mem abort info:
> > > [ 2.377392] ESR = 0x0000000096000004
> > > [ 2.379529] EC = 0x25: DABT (current EL), IL = 32 bits
> > > [ 2.379994] SET = 0, FnV = 0
> > > [ 2.380263] EA = 0, S1PTW = 0
> > > [ 2.380538] FSC = 0x04: level 0 translation fault
> > > [ 2.380964] Data abort info:
> > > [ 2.381217] ISV = 0, ISS = 0x00000004
> > > [ 2.381343] mmc2: SDHCI controller on fe330000.mmc [fe330000.mmc]
> > > using ADMA
> > > [ 2.381558] CM = 0, WnR = 0
> > > [ 2.382426] [0000000000000005] user address but active_mm is swapper
> > > [ 2.382981] Internal error: Oops: 96000004 [#1] PREEMPT SMP
> > > [ 2.383468] Modules linked in:
> > > [ 2.383740] CPU: 4 PID: 1 Comm: swapper/0 Not tainted 5.19.0-rc6+ #728
> > > [ 2.384311] Hardware name: 96boards Rock960 (DT)
> > > [ 2.384715] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS
> > > BTYPE=--)
> > > [ 2.385323] pc : pinctrl_lookup_state+0x20/0xc0
> > > [ 2.385729] lr : rockchip_i2s_probe+0x1a8/0x54c
> > > [ 2.386130] sp : ffff80000804bb30
> > > [ 2.386420] x29: ffff80000804bb30 x28: 0000000000000000 x27:
> > > ffff800009f204c8
> > > [ 2.387048] x26: ffff800009fc1060 x25: ffff800009fc1078 x24:
> > > ffff000002691b68
> > > [ 2.387673] x23: ffff800009967938 x22: ffffffffffffffed x21:
> > > ffff800009e1e0e8
> > > [ 2.388299] x20: ffffffffffffffed x19: ffff000002597480 x18:
> > > ffffffffffffffff
> > > [ 2.388924] x17: 000000040044ffff x16: 00400034b5503510 x15:
> > > ffff80008804b787
> > > [ 2.389550] x14: 0000000000000000 x13: 6c7274636e697020 x12:
> > > 73326920646e6966
> > > [ 2.390176] x11: 206f742064656c69 x10: 6166203a7332692e x9 :
> > > 656c696166203a73
> > > [ 2.390801] x8 : 32692e3030303061 x7 : 205d363238363733 x6 :
> > > ffff000001657880
> > > [ 2.391425] x5 : 0000000000000000 x4 : 0000000000000000 x3 :
> > > 0000000000000000
> > > [ 2.392051] x2 : 0000000000000000 x1 : ffff800009e1e0e8 x0 :
> > > ffffffffffffffed
> > > [ 2.392677] Call trace:
> > > [ 2.392892] pinctrl_lookup_state+0x20/0xc0
> > > [ 2.393261] rockchip_i2s_probe+0x1a8/0x54c
> > > [ 2.393629] platform_probe+0x68/0xe0
> > > [ 2.393954] really_probe.part.0+0x9c/0x2ac
> > > [ 2.394321] __driver_probe_device+0x98/0x144
> > > [ 2.394703] driver_probe_device+0xac/0x140
> > > [ 2.395070] __driver_attach+0xf8/0x1a0
> > > [ 2.395407] bus_for_each_dev+0x70/0xd0
> > > [ 2.395746] driver_attach+0x24/0x30
> > > [ 2.396063] bus_add_driver+0x150/0x200
> > > [ 2.396401] driver_register+0x78/0x130
> > > [ 2.396737] __platform_driver_register+0x28/0x34
> > > [ 2.397150] rockchip_i2s_driver_init+0x1c/0x28
> > > [ 2.397550] do_one_initcall+0x50/0x1c0
> > > [ 2.397890] kernel_init_freeable+0x208/0x28c
> > > [ 2.398274] kernel_init+0x28/0x13c
> > > [ 2.398583] ret_from_fork+0x10/0x20
> > > [ 2.398901] Code: aa0003f4 a9025bf5 aa0003f6 aa0103f5 (f8418e93)
> > > [ 2.399435] ---[ end trace 0000000000000000 ]---
> > > [ 2.399887] Kernel panic - not syncing: Attempted to kill init!
> > > exitcode=0x0000000b
> > > [ 2.400555] SMP: stopping secondary CPUs
> > > [ 2.400984] Kernel Offset: 0x80000 from 0xffff800008000000
> > > [ 2.401463] PHYS_OFFSET: 0x0
> > > [ 2.401716] CPU features: 0x800,00127811,00001082
> > > [ 2.402128] Memory Limit: none
> > > [ 2.402406] ---[ end Kernel panic - not syncing: Attempted to kill
> > > init! exitcode=0x0000000b ]---
> > >
> > >
> > > --
> > > <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
> > >
> > > Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
> > > <http://twitter.com/#!/linaroorg> Twitter |
> > > <http://www.linaro.org/linaro-blog/> Blog
> > >
> > > _______________________________________________
> > > Linux-rockchip mailing list
> > > Linux-rockchip@lists.infradead.org
> > > http://lists.infradead.org/mailman/listinfo/linux-rockchip
> >
> >
> >
> > --
> > Michael Nazzareno Trimarchi
> > Co-Founder & Chief Executive Officer
> > M. +39 347 913 2170
> > michael@amarulasolutions.com
> > __________________________________
> >
> > Amarula Solutions BV
> > Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
> > T. +31 (0)85 111 9172
> > info@amarulasolutions.com
> > www.amarulasolutions.com
>
>
>
> --
> Michael Nazzareno Trimarchi
> Co-Founder & Chief Executive Officer
> M. +39 347 913 2170
> michael@amarulasolutions.com
> __________________________________
>
> Amarula Solutions BV
> Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
> T. +31 (0)85 111 9172
> info@amarulasolutions.com
> www.amarulasolutions.com



--
Michael Nazzareno Trimarchi
Co-Founder & Chief Executive Officer
M. +39 347 913 2170
michael@amarulasolutions.com
__________________________________

Amarula Solutions BV
Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
T. +31 (0)85 111 9172
info@amarulasolutions.com
www.amarulasolutions.com

\
 
 \ /
  Last update: 2022-09-24 20:50    [W:0.076 / U:0.708 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site