[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <705D8B35-FBB5-4D32-AE63-DD4E773CEC1E@lca.pw>
Date: Tue, 25 Feb 2020 19:34:18 -0500
From: Qian Cai <cai@....pw>
To: "Rafael J. Wysocki" <rafael@...nel.org>
Cc: "Rafael J. Wysocki" <rjw@...ysocki.net>,
Marco Elver <elver@...gle.com>,
Linux PM <linux-pm@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH -next] power/qos: fix a data race in pm_qos_*_value
> On Feb 25, 2020, at 7:10 PM, Rafael J. Wysocki <rafael@...nel.org> wrote:
>
> The target_value field in struct pm_qos_constraints is used for
> lockless access to the effective constraint value of a given QoS list,
> so the readers of it cannot expect it to always reflect the most
> recent effective constraint value. However, they can and do expect it
> to be equal to a valid effective constraint value computed at a
> certain time in the past (event though it may not be the most recent
> one), so add READ|WRITE_ONCE() annotations around the target_value
> accesses to prevent the compiler from possibly causing that
> expectation to be unmet by generating code in an exceptionally
> convoluted way.
Perfect. I’ll send a v2 for that unless you would like to squash it in.
Powered by blists - more mailing lists