[igt-dev] [PATCH i-g-t] tests/device_reset: Work around for driver unbind issue with audio

Shankar, Uma uma.shankar at intel.com
Mon Sep 14 12:51:00 UTC 2020



> -----Original Message-----
> From: Janusz Krzysztofik <janusz.krzysztofik at linux.intel.com>
> Sent: Monday, September 14, 2020 5:56 PM
> To: Shankar, Uma <uma.shankar at intel.com>; igt-dev at lists.freedesktop.org
> Cc: Bernatowicz, Marcin <marcin.bernatowicz at intel.com>; Deak, Imre
> <imre.deak at intel.com>
> Subject: Re: [PATCH i-g-t] tests/device_reset: Work around for driver unbind
> issue with audio
> 
> Hi Uma,
> 
> On Mon, 2020-09-14 at 18:18 +0530, Uma Shankar wrote:
> > Unbinding the i915 driver on some Haswell and Broadwell platforms with
> > Azalia audio results in a kernel WARNING on "i915 raw-wakerefs=1
> > wakelocks=1 on cleanup".  The issue can be worked around by manually
> > enabling runtime power management for the conflicting audio adapter.
> > Use that method but also display a warning to preserve visibility of
> > the issue. Also tag the workaround with a FIXME comment.
> >
> > Signed-off-by: Uma Shankar <uma.shankar at intel.com>
> > Signed-off-by: Janusz Krzysztofik <janusz.krzysztofik at linux.intel.com>
> > ---
> 
> Even if the code looks the same as in my patch against core_hotunplug, this is a
> separate submission so I think you can drop drop my S-o-b, or replace it with a
> Suggested-by:, then add my
> 

Sure Janusz, will do the needful. Thanks for the pointers.

Regards,
Uma Shankar

> Reviewed-by: Janusz Krzysztofik <janusz.krzysztofik at linux.intel.com>

> Thanks,
> Janusz
> 
> 
> 
> >  tests/device_reset.c | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
> >
> > diff --git a/tests/device_reset.c b/tests/device_reset.c index
> > b1181b3b..9cb59ee4 100644
> > --- a/tests/device_reset.c
> > +++ b/tests/device_reset.c
> > @@ -232,9 +232,20 @@ static void set_device_filter(const char*
> > dev_path)
> >
> >  static void unbind_reset_rebind(struct device_fds *dev)  {
> > +	uint32_t devid = intel_get_drm_devid(dev->fds.dev);
> >  	igt_debug("close the device\n");
> >  	close_if_opened(&dev->fds.dev);
> >
> > +	/**
> > +	 * FIXME: Unbinding the i915 driver on some platforms with Azalia audio
> > +	 * results in a kernel WARN on "i915 raw-wakerefs=1 wakelocks=1 on
> cleanup".
> > +	 * The below CI friendly user level workaround prevents the warning
> from
> > +	 * appearing. Drop this hack as soon as this is fixed in the kernel.
> > +	 */
> > +	if (igt_warn_on_f((bool) IS_HASWELL(devid) || IS_BROADWELL(devid),
> > +	    "Manually enabling audio PM to work around a kernel WARN\n"))
> > +		igt_pm_enable_audio_runtime_pm();
> > +
> >  	driver_unbind(dev);
> >
> >  	initiate_device_reset(dev);



More information about the igt-dev mailing list