Re: [PATCH 1/2] drivers: base: power: main: Use built-in RCU list checking

From: Madhuparna Bhowmik
Date: Tue Mar 03 2020 - 11:09:59 EST


On Mon, Mar 02, 2020 at 06:02:21PM +0100, Rafael J. Wysocki wrote:
> On Mon, Mar 2, 2020 at 1:34 PM Madhuparna Bhowmik
> <madhuparnabhowmik10@xxxxxxxxx> wrote:
> >
> >
> >
> > On Mon, 2 Mar, 2020, 3:48 AM Joel Fernandes, <joel@xxxxxxxxxxxxxxxxx> wrote:
> >>
> >> On Sun, Mar 1, 2020 at 4:23 PM Rafael J. Wysocki <rafael@xxxxxxxxxx> wrote:
> >> >
> >> > On Sun, Mar 1, 2020 at 9:53 PM <joel@xxxxxxxxxxxxxxxxx> wrote:
> >> > >
> >> > >
> >> > >
> >> > > On March 1, 2020 3:12:53 PM EST, "Rafael J. Wysocki" <rafael@xxxxxxxxxx> wrote:
> >> > > >On Fri, Feb 28, 2020 at 6:47 PM <madhuparnabhowmik10@xxxxxxxxx> wrote:
> >> > > >>
> >> > > >> From: Madhuparna Bhowmik <madhuparnabhowmik10@xxxxxxxxx>
> >> > > >>
> >> > > >> This patch passes the cond argument to list_for_each_entry_rcu()
> >> > > >> to fix the following false-positive lockdep warnings:
> >> > > >>
> >> > > >> [ 330.302784] =============================
> >> > > >> [ 330.302789] WARNING: suspicious RCU usage
> >> > > >> [ 330.302796] 5.6.0-rc1+ #5 Not tainted
> >> > > >> [ 330.302801] -----------------------------
> >> > > >> [ 330.302808] drivers/base/power/main.c:326 RCU-list traversed in
> >> > > >non-reader section!!
> >> > > >>
> >> > > >> [ 330.303303] =============================
> >> > > >> [ 330.303307] WARNING: suspicious RCU usage
> >> > > >> [ 330.303311] 5.6.0-rc1+ #5 Not tainted
> >> > > >> [ 330.303315] -----------------------------
> >> > > >> [ 330.303319] drivers/base/power/main.c:1698 RCU-list traversed in
> >> > > >non-reader section!!
> >> > > >>
> >> > > >> [ 331.934969] =============================
> >> > > >> [ 331.934971] WARNING: suspicious RCU usage
> >> > > >> [ 331.934973] 5.6.0-rc1+ #5 Not tainted
> >> > > >> [ 331.934975] -----------------------------
> >> > > >> [ 331.934977] drivers/base/power/main.c:1238 RCU-list traversed in
> >> > > >non-reader section!!
> >> > > >>
> >> > > >> [ 332.467772] WARNING: suspicious RCU usage
> >> > > >> [ 332.467775] 5.6.0-rc1+ #5 Not tainted
> >> > > >> [ 332.467775] -----------------------------
> >> > > >> [ 332.467778] drivers/base/power/main.c:269 RCU-list traversed in
> >> > > >non-reader section!!
> >> > > >
> >> > > >I don't see these warnings in the kernels run locally here.
> >> > > >
> >> > > >What do you do to get them?
> >> > > >
> >> > > >Joel, any comments here?
> >> > >
> >> > > You have to enable lockdep in your config. Does your setup have that?
> >> >
> >> > CONFIG_LOCK_DEBUGGING_SUPPORT=y
> >> > CONFIG_PROVE_LOCKING=y
> >> > CONFIG_DEBUG_SPINLOCK=y
> >> > CONFIG_DEBUG_LOCK_ALLOC=y
> >> > CONFIG_LOCKDEP=y
> >>
> >>
> > I had CONFIG_PROVE_RCU_LIST = y and I think these warnings were triggered when I had closed my laptop (like just close without shutting down).
>
> OK, so let's define a macro for that in this file to avoid code duplication.
>
> And analogously in the second patch.
>
Sure, I will do it and send the patch soon.

> Thanks!