[Intel-gfx] ✗ Fi.CI.IGT: warning for PSR lag fixes

2018-02-11 Thread Patchwork
== Series Details == Series: PSR lag fixes URL : https://patchwork.freedesktop.org/series/38067/ State : warning == Summary == Test perf: Subgroup oa-exponents: pass -> FAIL (shard-apl) fdo#102254 Subgroup polling: fail -> PASS

[Intel-gfx] ✓ Fi.CI.BAT: success for PSR lag fixes

2018-02-11 Thread Patchwork
== Series Details == Series: PSR lag fixes URL : https://patchwork.freedesktop.org/series/38067/ State : success == Summary == Series 38067v1 PSR lag fixes https://patchwork.freedesktop.org/api/1.0/series/38067/revisions/1/mbox/ Test debugfs_test: Subgroup read_all_entries:

[Intel-gfx] [PATCH 1/3] drm/i915/psr: Use more PSR HW tracking.

2018-02-11 Thread Dhinakaran Pandiyan
From: Rodrigo Vivi So far we are using frontbuffer tracking for everything and ignoring that PSR has a HW capable HW tracking for many modern usages of GPU on Core platforms and newer Atom ones. One reason for that is that we were trying to keep same infrastructure in place for VLV/CHV than the

[Intel-gfx] [PATCH 3/3] drm/i915/psr: Wait for PSR transition to complete before exiting.

2018-02-11 Thread Dhinakaran Pandiyan
With fbdev, screen freezes after a few continuous PSR exit->enter cycles. Printing out the PSR status register clearly showed this freeze coincided with exiting when the hardware is in a transitory state. So wait for 100 ms (~6 frames) for PSR to become active and then exit. Cc: Rodrigo Vivi Sign

[Intel-gfx] [PATCH 0/3] PSR lag fixes

2018-02-11 Thread Dhinakaran Pandiyan
PSR currently when enabled results in semi-permanent freezes or noticeable cursor lags. https://patchwork.freedesktop.org/series/37598/ will fix long freezes due to frame counter resets. This series has three more fixes - Patch 1 eliminates PSR exit for flips and makes us rely on the HW to do it

[Intel-gfx] [PATCH 2/3] drm/i915/psr: HW tracking for cursor moves to fix lags.

2018-02-11 Thread Dhinakaran Pandiyan
DRM_IOCTL_MODE_CURSOR results in a frontbuffer flush before the cursor plane MMIOs are written to. But this flush is not necessary for PSR as hardware tracking takes care of exiting PSR when the MMIO's are written. Introduce a new fb_op_origin enum to differentiate these flushes from those origina

Re: [Intel-gfx] [PATCH 0/5] Fix deadlock on runtime suspend in DRM drivers

2018-02-11 Thread Lukas Wunner
On Mon, Feb 12, 2018 at 12:35:51AM +, Mike Lothian wrote: > I've not been able to reproduce the original problem you're trying to > solve on amdgpu thats with or without your patch set and the above > "trigger" too > > Is anything else required to trigger it, I started multiple DRI_PRIME > glx

Re: [Intel-gfx] [PATCH 0/5] Fix deadlock on runtime suspend in DRM drivers

2018-02-11 Thread Mike Lothian
Hi I've not been able to reproduce the original problem you're trying to solve on amdgpu thats with or without your patch set and the above "trigger" too Is anything else required to trigger it, I started multiple DRI_PRIME glxgears, in parallel, serial waiting the 12 seconds and serial within th

Re: [Intel-gfx] [PATCH 0/5] Fix deadlock on runtime suspend in DRM drivers

2018-02-11 Thread Lukas Wunner
On Sun, Feb 11, 2018 at 08:23:14PM +0100, Lukas Wunner wrote: > On Sun, Feb 11, 2018 at 06:58:11PM +, Mike Lothian wrote: > > On 11 February 2018 at 09:38, Lukas Wunner wrote: > > > The patches for radeon and amdgpu are compile-tested only, I only have a > > > MacBook Pro with an Nvidia GK107

Re: [Intel-gfx] [PATCH 0/5] Fix deadlock on runtime suspend in DRM drivers

2018-02-11 Thread Lukas Wunner
On Sun, Feb 11, 2018 at 06:58:11PM +, Mike Lothian wrote: > On 11 February 2018 at 09:38, Lukas Wunner wrote: > > The patches for radeon and amdgpu are compile-tested only, I only have a > > MacBook Pro with an Nvidia GK107 to test. To test the patches, add an > > "msleep(12*1000);" at the to

Re: [Intel-gfx] [PATCH 0/5] Fix deadlock on runtime suspend in DRM drivers

2018-02-11 Thread Mike Lothian
On 11 February 2018 at 09:38, Lukas Wunner wrote: > Fix a deadlock on hybrid graphics laptops that's been present since 2013: > > DRM drivers poll connectors in 10 sec intervals. The poll worker is > stopped on ->runtime_suspend with cancel_delayed_work_sync(). However > the poll worker invokes

[Intel-gfx] [PATCH igt] igt/kms_frontbuffer_tracking: Disable FBC testing for -ENODEV

2018-02-11 Thread Chris Wilson
Signed-off-by: Chris Wilson --- tests/kms_frontbuffer_tracking.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/kms_frontbuffer_tracking.c b/tests/kms_frontbuffer_tracking.c index 602707f98..6d3fe8d02 100644 --- a/tests/kms_frontbuffer_tracking.c +++ b/tests/kms_frontbuffer_tracking

Re: [Intel-gfx] [PATCH v4 1/3] drm/i915: Add intel_bios_cleanup() function

2018-02-11 Thread Hans de Goede
Hi, On 06-02-18 15:12, Hans de Goede wrote: Add an intel_bios_cleanup() function to act as counterpart of intel_bios_init() and move the cleanup of vbt related resources there, putting it in the same file as the allocation. Signed-off-by: Hans de Goede Can I get an Acked-by for this patch an

[Intel-gfx] [PATCH 0/5] Fix deadlock on runtime suspend in DRM drivers

2018-02-11 Thread Lukas Wunner
Fix a deadlock on hybrid graphics laptops that's been present since 2013: DRM drivers poll connectors in 10 sec intervals. The poll worker is stopped on ->runtime_suspend with cancel_delayed_work_sync(). However the poll worker invokes the DRM drivers' ->detect callbacks, which call pm_runtime_g

[Intel-gfx] [PATCH 5/5] drm/amdgpu: Fix deadlock on runtime suspend

2018-02-11 Thread Lukas Wunner
amdgpu's ->runtime_suspend hook calls drm_kms_helper_poll_disable(), which waits for the output poll worker to finish if it's running. The output poll worker meanwhile calls pm_runtime_get_sync() in amdgpu's ->detect hooks, which waits for the ongoing suspend to finish, causing a deadlock. Fix by

[Intel-gfx] [PATCH 2/5] drm: Allow determining if current task is output poll worker

2018-02-11 Thread Lukas Wunner
Introduce a helper to determine if the current task is an output poll worker. This allows us to fix a long-standing deadlock in several DRM drivers wherein the ->runtime_suspend callback waits for the output poll worker to finish and the worker in turn calls a ->detect callback which waits for run

[Intel-gfx] [PATCH 1/5] workqueue: Allow retrieval of current task's work struct

2018-02-11 Thread Lukas Wunner
Introduce a helper to retrieve the current task's work struct if it is a workqueue worker. This allows us to fix a long-standing deadlock in several DRM drivers wherein the ->runtime_suspend callback waits for a specific worker to finish and that worker in turn calls a function which waits for run

[Intel-gfx] [PATCH 4/5] drm/radeon: Fix deadlock on runtime suspend

2018-02-11 Thread Lukas Wunner
radeon's ->runtime_suspend hook calls drm_kms_helper_poll_disable(), which waits for the output poll worker to finish if it's running. The output poll worker meanwhile calls pm_runtime_get_sync() in radeon's ->detect hooks, which waits for the ongoing suspend to finish, causing a deadlock. Fix by

[Intel-gfx] [PATCH 3/5] drm/nouveau: Fix deadlock on runtime suspend

2018-02-11 Thread Lukas Wunner
nouveau's ->runtime_suspend hook calls drm_kms_helper_poll_disable(), which waits for the output poll worker to finish if it's running. The output poll worker meanwhile calls pm_runtime_get_sync() in nouveau_connector_detect() which waits for the ongoing suspend to finish, causing a deadlock. Fix