[Intel-gfx] [PATCH] snd/hda: Only get/put display_power once

Chris Wilson chris at chris-wilson.co.uk
Wed Apr 10 10:24:24 UTC 2019


Quoting Takashi Iwai (2019-04-10 11:09:47)
> On Wed, 10 Apr 2019 10:17:33 +0200,
> Chris Wilson wrote:
> > 
> > While we only allow a single display power reference, the current
> > acquisition/release is racy and a direct call may run concurrently with
> > a runtime-pm worker. Prevent the double unreference by atomically
> > tracking the display_power_active cookie.
> > 
> > Testcase: igt/i915_pm_rpm/module-reload #glk-dsi
> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > Cc: Takashi Iwai <tiwai at suse.de>
> > Cc: Imre Deak <imre.deak at intel.com>
> 
> I rather prefer a more straightforward conversion, e.g. something like
> below.  Checking the returned cookie as the state flag is not quite
> intuitive, so revive the boolean state flag, and handle it
> atomically.

Access to the cookie itself is not atomic there, and theoretically
there could be a get/put/get running concurrently. Are you sure don't
want a refcount and lock here? :)

Your call. For the case CI is hitting, it should do the trick (as we are
only seeing the race on put/put I think). CI will answer in a hour or
two.
-Chris


More information about the Intel-gfx mailing list