[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+G9fYvifz5xDDNjoJBt2MRfdqwDtNf53teWXUs5QCOn2uhbfw@mail.gmail.com>
Date: Thu, 16 Jun 2022 00:56:10 +0530
From: Naresh Kamboju <naresh.kamboju@...aro.org>
To: Viresh Kumar <viresh.kumar@...aro.org>
Cc: open list <linux-kernel@...r.kernel.org>,
Linux-Next Mailing List <linux-next@...r.kernel.org>,
regressions@...ts.linux.dev,
"Rafael J. Wysocki" <rafael@...nel.org>,
Linux PM <linux-pm@...r.kernel.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Nicolas Dechesne <nicolas.dechesne@...aro.org>
Subject: Re: [next] arm64: db410c: WARNING: CPU: 0 PID: 1 at
drivers/opp/core.c:2265 dev_pm_opp_clear_config+0x174/0x17c
Hi Viresh,
On Wed, 15 Jun 2022 at 10:55, Viresh Kumar <viresh.kumar@...aro.org> wrote:
>
> On 15-06-22, 02:49, Naresh Kamboju wrote:
> > Following kernel crash reported while booting arm64 db410c board with
> > Linux next-20220614 [1] kfence enabled on this kernel.
> >
> > Reported-by: Linux Kernel Functional Testing <lkft@...aro.org>
> >
> > Boot log:
> > ---------
> > [ 0.850420] WARNING: CPU: 0 PID: 1 at drivers/opp/core.c:2265
>
> A print like this normally comes when we hit a WARN or something.
>
> Here is the line 2265 from above tag
>
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/drivers/opp/core.c?h=next-20220614#n2265
>
> which doesn't have any such WARNs there. I wonder where exactly we hit the WARN
> here and why it isn't showing up properly.
>
> > dev_pm_opp_clear_config+0x174/0x17c
> > [ 0.850447] Modules linked in:
> > [ 0.850459] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
> > 5.19.0-rc1-next-20220610 #1
> > [ 0.850470] Hardware name: Qualcomm Technologies, Inc. APQ 8016 SBC (DT)
> > [ 0.850477] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
> > [ 0.850489] pc : dev_pm_opp_clear_config+0x174/0x17c
> > [ 0.850501] lr : dt_cpufreq_probe+0x1e4/0x4a0
> > [ 0.850513] sp : ffff80000802bb00
> > [ 0.850518] x29: ffff80000802bb00 x28: ffff80000ada1c30 x27: 0000000000000000
> > [ 0.850538] x26: 00000000fffffdfb x25: ffff00000311f410 x24: ffff00000389ec90
> > [ 0.850557] x23: ffff80000a9eea98 x22: ffff80000a9eed00 x21: ffff80000ada1b68
> > [ 0.850576] x20: ffff00000389ec80 x19: ffff00003fc41308 x18: ffffffffffffffff
> > [ 0.850595] x17: ffff800009f21700 x16: ffff8000080955c0 x15: ffff0000031c2a1c
> > [ 0.850614] x14: 0000000000000001 x13: 0a6b636f6c632064 x12: 6e69662074276e64
> > [ 0.850632] x11: 0000000000000040 x10: 0000000000000020 x9 : ffff800009006964
> > [ 0.850650] x8 : 0000000000000020 x7 : ffffffffffffffff x6 : 0000000000000000
> > [ 0.850668] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
> > [ 0.850686] x2 : 0000000000000004 x1 : 0000000000000000 x0 : 0000000000000000
> > [ 0.850704] Call trace:
> > [ 0.850708] dev_pm_opp_clear_config+0x174/0x17c
> > [ 0.850722] platform_probe+0x74/0xf0
>
> Nevertheless, I see one place from where such a WARN can be hit, which can be
> fixed with:
>
> diff --git a/drivers/opp/core.c b/drivers/opp/core.c
> index 58eae9de4b91..c3d4058d33fc 100644
> --- a/drivers/opp/core.c
> +++ b/drivers/opp/core.c
> @@ -2437,7 +2437,7 @@ EXPORT_SYMBOL_GPL(dev_pm_opp_set_config);
> */
> void dev_pm_opp_clear_config(struct opp_table *opp_table)
> {
> - if (WARN_ON(!opp_table))
> + if (!opp_table)
> return;
>
> _opp_detach_genpd(opp_table);
>
> Not sure it fixes the issue you reported here though.
>
> Can you run the tests for my branch once, it has the updated fix as well.
As per your suggestion, I have tested [1] this tree and branch and it worked.
The reported kernel warning has been fixed.
Thank you.
Tested-by: Linux Kernel Functional Testing <lkft@...aro.org>
>
> git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm.git opp/linux-next
>
> --
> viresh
[1] https://lkft.validation.linaro.org/scheduler/job/5179605
--
Linaro LKFT
https://lkft.linaro.org
Powered by blists - more mailing lists