[Intel-gfx] [PATCH v2 01/11] drm/i915: Disable preemption and sleeping while using the punit sideband

Chris Wilson chris at chris-wilson.co.uk
Mon Jan 22 12:54:12 UTC 2018


Quoting Mika Kuoppala (2018-01-15 12:04:40)
> Chris Wilson <chris at chris-wilson.co.uk> writes:
> 
> > While we talk to the punit over its sideband, we need to prevent the cpu
> > from sleeping in order to prevent a potential machine hang.
> >
> > Note that by itself, it appears that pm_qos_update_request (via
> > intel_idle) doesn't provide a sufficient barrier to ensure that all core
> > are indeed awake (out of Cstate) and that the package is awake. To do so,
> > we need to supplement the pm_qos with a manual ping on_each_cpu.
> >
> > v2: Restrict the heavy-weight wakeup to just the ISOF_PORT_PUNIT, there
> > is insufficient evidence to implicate a wider problem atm. Similarly,
> > restrict the w/a to Valleyview, as Cherryview doesn't have an angry cadre
> > of users.
> >
> 
> One datapoint about the v1 of this patch with the cpu ping in it.
> The j1900 byt did end up with system hang during weekend with
> drm-tip + v1.

Fwiw, I've reproduced a scenario that triggers j1900 death:
gem_exec_load/pulse.

So far so good with essentially this patchset on drm-tip. Does that
testcase trigger the bug for you?
-Chris


More information about the Intel-gfx mailing list