Re: [Intel-gfx] [PATCH 8/8] drm/i915: Wait on external rendering for GEM objects

2016-07-20 Thread Joonas Lahtinen
On ti, 2016-07-19 at 15:27 +0100, Chris Wilson wrote: > On Tue, Jul 19, 2016 at 05:12:22PM +0300, Joonas Lahtinen wrote: > > > > On ti, 2016-07-19 at 11:51 +0100, Chris Wilson wrote: > > > > > > + resv = i915_gem_object_get_dmabuf_resv(obj); > > > + if (resv) { > > > + long err; > > We al

Re: [Intel-gfx] [PATCH i-g-t v2 03/15] kms_psr_sink_crc: Use for_each_pipe_with_valid_output to find a valid config.

2016-07-20 Thread Maarten Lankhorst
Op 19-07-16 om 15:58 schreef Ander Conselvan De Oliveira: > On Fri, 2016-07-15 at 14:15 +0300, Ander Conselvan De Oliveira wrote: >> On Wed, 2016-07-06 at 11:55 +0200, Maarten Lankhorst wrote: >>> This is the only time PIPE_ANY was used to mean something other than >>> unassign this output from a p

[Intel-gfx] [CI 1/8] drm/i915: Move GEM request routines to i915_gem_request.c

2016-07-20 Thread Chris Wilson
Migrate the request operations out of the main body of i915_gem.c and into their own C file for easier expansion. v2: Move __i915_add_request() across as well Signed-off-by: Chris Wilson Acked-by: Mika Kuoppala Reviewed-by: Joonas Lahtinen --- drivers/gpu/drm/i915/Makefile | 1 +

[Intel-gfx] [CI 6/8] drm/i915: Disable waitboosting for mmioflips/semaphores

2016-07-20 Thread Chris Wilson
Since commit a6f766f39751 ("drm/i915: Limit ring synchronisation (sw sempahores) RPS boosts") and commit bcafc4e38b6a ("drm/i915: Limit mmio flip RPS boosts") we have limited the waitboosting for semaphores and flips. Ideally we do not want to boost in either of these instances as no userspace cons

[Intel-gfx] [CI 3/8] drm/i915: Mark all current requests as complete before resetting them

2016-07-20 Thread Chris Wilson
Following a GPU reset upon hang, we retire all the requests and then mark them all as complete. If we mark them as complete first, we both keep the normal retirement order (completed first then retired) and provide a small optimisation for concurrent lookups. Signed-off-by: Chris Wilson Reviewed-

[Intel-gfx] [CI 5/8] drm/i915: Disable waitboosting for fence_wait()

2016-07-20 Thread Chris Wilson
We want to restrict waitboosting to known process contexts, where we can track which clients are receiving waitboosts and prevent excessive power wasting. For fence_wait() we do not have any client tracking and so that leaves it open to abuse. v2: Hide the IS_ERR_OR_NULL testing for special client

[Intel-gfx] [CI 4/8] drm/i915: Derive GEM requests from dma-fence

2016-07-20 Thread Chris Wilson
dma-buf provides a generic fence class for interoperation between drivers. Internally we use the request structure as a fence, and so with only a little bit of interfacing we can rebase those requests on top of dma-buf fences. This will allow us, in the future, to pass those fences back to userspac

[Intel-gfx] [CI 8/8] drm/i915: Wait on external rendering for GEM objects

2016-07-20 Thread Chris Wilson
When transitioning to the GTT or CPU domain we wait on all rendering from i915 to complete (with the optimisation of allowing concurrent read access by both the GPU and client). We don't yet ensure all rendering from third parties (tracked by implicit fences on the dma-buf) is complete. Since impli

[Intel-gfx] [CI 7/8] drm/i915: Mark imported dma-buf objects as being coherent

2016-07-20 Thread Chris Wilson
A foreign dma-buf does not share our cache domain tracking, and we rely on the producer ensuring cache coherency. Marking them as being in the CPU domain is incorrect. v2: Add commentary about the GTT domain. This is not the best place for it, but pending an actual overhaul of our domain tracking

[Intel-gfx] [CI 2/8] drm/i915: Retire oldest completed request before allocating next

2016-07-20 Thread Chris Wilson
In order to keep the memory allocated for requests reasonably tight, try to reuse the oldest request (so long as it is completed and has no external references) for the next allocation. v2: Throw in a comment to hopefully make sure no one mistakes the optimistic retirement of the oldest request fo

[Intel-gfx] [PATCH] drm-intel.rst: Clarify what "Switch to -nightly" means

2016-07-20 Thread Daniel Vetter
Unclear whether dim co or plain cd was meant, suggested by Chris. Signed-off-by: Daniel Vetter --- drm-intel.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/drm-intel.rst b/drm-intel.rst index 6771bed6654e..492cb580bbd5 100644 --- a/drm-intel.rst +++ b/drm-intel.rst @@ -248,6 +248,7 @@ w

[Intel-gfx] ✓ Ro.CI.BAT: success for series starting with [CI,1/8] drm/i915: Move GEM request routines to i915_gem_request.c

2016-07-20 Thread Patchwork
== Series Details == Series: series starting with [CI,1/8] drm/i915: Move GEM request routines to i915_gem_request.c URL : https://patchwork.freedesktop.org/series/10078/ State : success == Summary == Series 10078v1 Series without cover letter http://patchwork.freedesktop.org/api/1.0/series/1

[Intel-gfx] A simple batch of churn to make reference handling look consistent

2016-07-20 Thread Chris Wilson
And a bonus 3 patches that do a minor tweak to intel_ringbuffer.c and friends. -Chris ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx

[Intel-gfx] [PATCH 6/9] drm/i915: Rename drm_gem_object_unreference_unlocked in preparation for lockless free

2016-07-20 Thread Chris Wilson
Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_drv.h | 10 ++ drivers/gpu/drm/i915/i915_gem.c | 10 +- drivers/gpu/drm/i915/i915_gem_tiling.c | 2 +- drivers/gpu/drm/i915/i915_gem_userptr.c | 2 +- drivers/gpu/drm/i915/intel_display.c| 6 +++---

[Intel-gfx] [PATCH 1/9] drm/i915: Rename request reference/unreference to get/put

2016-07-20 Thread Chris Wilson
Now that we derive requests from struct fence, swap over to its nomenclature for references. It's shorter and more idiomatic across the kernel. s/i915_gem_request_reference/i915_gem_request_get/ s/i915_gem_request_unreference/i915_gem_request_put/ Signed-off-by: Chris Wilson Reviewed-by: Daniel

[Intel-gfx] [PATCH 8/9] drm/i915: Rename ring->virtual_start as ring->vaddr

2016-07-20 Thread Chris Wilson
Just a different colour to better match virtual addresses elsewhere. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_irq.c | 2 +- drivers/gpu/drm/i915/intel_ringbuffer.c | 11 +-- drivers/gpu/drm/i915/intel_ringbuffer.h | 4 ++-- 3 files changed, 8 insertions(+), 9 d

[Intel-gfx] [PATCH 7/9] drm/i915: Treat ringbuffer writes as write to normal memory

2016-07-20 Thread Chris Wilson
Ringbuffers are now being written to either through LLC or WC paths, so treating them as simply iomem is no longer adequate. However, for the older !llc hardware, the hardware is documentated as treating the TAIL register update as serialising, so we can relax the barriers when filling the rings (b

[Intel-gfx] [PATCH 9/9] drm/i915: Convert i915_semaphores_is_enabled over to early sanitize

2016-07-20 Thread Chris Wilson
Rather than recomputing whether semaphores are enabled, we can do that computation once during early initialisation as the i915.semaphores module parameter is now read-only. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_debugfs.c | 2 +- drivers/gpu/drm/i915/i915_drv.c |

[Intel-gfx] [PATCH 2/9] drm/i915: Rename i915_gem_context_reference/unreference()

2016-07-20 Thread Chris Wilson
As these are wrappers around kref_get/kref_put() it is preferable to follow the naming convention and use the same verb get/put in our wrapper names for manipulating a reference to the context. Signed-off-by: Chris Wilson Cc: Tvrtko Ursulin Cc: Joonas Lahtinen Reviewed-by: Joonas Lahtinen ---

[Intel-gfx] [PATCH 3/9] drm/i915: Wrap drm_gem_object_lookup in i915_gem_object_lookup

2016-07-20 Thread Chris Wilson
For symmetry with a forthcoming i915_gem_object_get() and i915_gem_object_pu(). Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_drv.h| 20 +++- drivers/gpu/drm/i915/i915_gem.c| 58 +- drivers/gpu/drm/i915/i915_gem_tiling.c | 8 ++

[Intel-gfx] [PATCH 5/9] drm/i915: Rename drm_gem_object_unreference in preparation for lockless free

2016-07-20 Thread Chris Wilson
Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_drv.h | 10 ++ drivers/gpu/drm/i915/i915_gem.c | 26 +- drivers/gpu/drm/i915/i915_gem_batch_pool.c | 4 ++-- drivers/gpu/drm/i915/i915_gem_context.c | 4 ++-- drivers/gpu/d

[Intel-gfx] [PATCH 4/9] drm/i915: Wrap drm_gem_object_reference in i915_gem_object_get

2016-07-20 Thread Chris Wilson
Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_drv.h| 11 +++ drivers/gpu/drm/i915/i915_gem.c| 4 ++-- drivers/gpu/drm/i915/i915_gem_dmabuf.c | 3 +-- drivers/gpu/drm/i915/i915_gem_evict.c | 2 +- drivers/gpu/drm/i915/i915_gem_execbuffer.c |

Re: [Intel-gfx] [PATCH 09/17] drm/i915: Debugfs support for GuC logging control

2016-07-20 Thread Tvrtko Ursulin
On 20/07/16 05:42, Goel, Akash wrote: On 7/19/2016 4:54 PM, Tvrtko Ursulin wrote: On 10/07/16 14:41, akash.g...@intel.com wrote: From: Sagar Arun Kamble This patch provides debugfs interface i915_guc_output_control for on the fly enabling/disabling of logging in GuC firmware and controlling

Re: [Intel-gfx] [PATCH 08/17] drm/i915: Forcefully flush GuC log buffer on reset

2016-07-20 Thread Chris Wilson
On Wed, Jul 20, 2016 at 09:51:45AM +0530, Goel, Akash wrote: > > > On 7/19/2016 4:51 PM, Chris Wilson wrote: > >On Tue, Jul 19, 2016 at 12:12:20PM +0100, Tvrtko Ursulin wrote: > >> > >>On 10/07/16 14:41, akash.g...@intel.com wrote: > >>>From: Sagar Arun Kamble > >>> > >>>If GuC logs are being ca

Re: [Intel-gfx] [PATCH] drm/i915/vlv: Fix off-by-1 error in calculating num_levels.

2016-07-20 Thread Maarten Lankhorst
Op 19-07-16 om 17:14 schreef Maarten Lankhorst: > num_levels should be level+1, not level, else num_levels - 1 becomes > negative. This resulted in bogus watermarks being written to the first > 255 levels like below: > > [drm] Setting FIFO watermarks - C: plane=0, cursor=0, sprite0=0, sprite1=0, >

Re: [Intel-gfx] [PATCH 09/17] drm/i915: Debugfs support for GuC logging control

2016-07-20 Thread Goel, Akash
On 7/20/2016 2:38 PM, Tvrtko Ursulin wrote: On 20/07/16 05:42, Goel, Akash wrote: On 7/19/2016 4:54 PM, Tvrtko Ursulin wrote: On 10/07/16 14:41, akash.g...@intel.com wrote: From: Sagar Arun Kamble This patch provides debugfs interface i915_guc_output_control for on the fly enabling/disab

[Intel-gfx] ✗ Ro.CI.BAT: failure for series starting with [1/9] drm/i915: Rename request reference/unreference to get/put

2016-07-20 Thread Patchwork
== Series Details == Series: series starting with [1/9] drm/i915: Rename request reference/unreference to get/put URL : https://patchwork.freedesktop.org/series/10081/ State : failure == Summary == Series 10081v1 Series without cover letter http://patchwork.freedesktop.org/api/1.0/series/1008

Re: [Intel-gfx] [PATCH 09/17] drm/i915: Debugfs support for GuC logging control

2016-07-20 Thread Tvrtko Ursulin
On 20/07/16 10:32, Goel, Akash wrote: On 7/20/2016 2:38 PM, Tvrtko Ursulin wrote: On 20/07/16 05:42, Goel, Akash wrote: On 7/19/2016 4:54 PM, Tvrtko Ursulin wrote: On 10/07/16 14:41, akash.g...@intel.com wrote: From: Sagar Arun Kamble This patch provides debugfs interface i915_guc_outp

Re: [Intel-gfx] [PATCH 08/17] drm/i915: Forcefully flush GuC log buffer on reset

2016-07-20 Thread Goel, Akash
On 7/20/2016 2:42 PM, Chris Wilson wrote: On Wed, Jul 20, 2016 at 09:51:45AM +0530, Goel, Akash wrote: On 7/19/2016 4:51 PM, Chris Wilson wrote: On Tue, Jul 19, 2016 at 12:12:20PM +0100, Tvrtko Ursulin wrote: On 10/07/16 14:41, akash.g...@intel.com wrote: From: Sagar Arun Kamble If GuC

Re: [Intel-gfx] [PATCH 12/13] drm/i915: Consolidate legacy semaphore initialization

2016-07-20 Thread Tvrtko Ursulin
On 19/07/16 19:38, Dave Gordon wrote: On 15/07/16 14:13, Tvrtko Ursulin wrote: On 29/06/16 17:00, Chris Wilson wrote: On Wed, Jun 29, 2016 at 04:41:58PM +0100, Tvrtko Ursulin wrote: On 29/06/16 16:34, Chris Wilson wrote: On Wed, Jun 29, 2016 at 04:09:31PM +0100, Tvrtko Ursulin wrote: From

[Intel-gfx] [PATCH v2] drm/i915:gen9: restrict WaC6DisallowByGfxPause

2016-07-20 Thread tim . gore
From: Tim Gore WaC6DisallowByGfxPause is currently applied unconditionally but is not required in all revisions. v2: extend application of workaround to agree with w/a database, which differs from the HSD. References: HSD#2133391 Signed-off-by: Tim Gore --- drivers/gpu/drm/i915/intel_guc_load

Re: [Intel-gfx] [PATCH 09/17] drm/i915: Debugfs support for GuC logging control

2016-07-20 Thread Goel, Akash
On 7/20/2016 3:17 PM, Tvrtko Ursulin wrote: On 20/07/16 10:32, Goel, Akash wrote: On 7/20/2016 2:38 PM, Tvrtko Ursulin wrote: On 20/07/16 05:42, Goel, Akash wrote: On 7/19/2016 4:54 PM, Tvrtko Ursulin wrote: On 10/07/16 14:41, akash.g...@intel.com wrote: From: Sagar Arun Kamble This

[Intel-gfx] ✗ Ro.CI.BAT: failure for drm/i915:gen9: restrict WaC6DisallowByGfxPause (rev2)

2016-07-20 Thread Patchwork
== Series Details == Series: drm/i915:gen9: restrict WaC6DisallowByGfxPause (rev2) URL : https://patchwork.freedesktop.org/series/9930/ State : failure == Summary == Series 9930v2 drm/i915:gen9: restrict WaC6DisallowByGfxPause http://patchwork.freedesktop.org/api/1.0/series/9930/revisions/2/mb

Re: [Intel-gfx] [PATCH 09/17] drm/i915: Debugfs support for GuC logging control

2016-07-20 Thread Tvrtko Ursulin
On 20/07/16 11:12, Goel, Akash wrote: On 7/20/2016 3:17 PM, Tvrtko Ursulin wrote: +ret = -EINVAL; +goto end; +} + +intel_runtime_pm_get(dev_priv); +ret = i915_guc_log_control(dev, val); +intel_runtime_pm_put(dev_priv); + +end: +mutex_unlock(&dev->struct_mutex

Re: [Intel-gfx] [PATCH] drm/i915/gen9: Add WaDisableGatherAtSetShaderCommonSlice

2016-07-20 Thread Arun Siluvery
On 16/06/2016 15:44, Mika Kuoppala wrote: Add WaDisableGatherAtSetShaderCommonSlice for all gen9 as stated by bspec. References: HSD#2135817 Signed-off-by: Mika Kuoppala --- drivers/gpu/drm/i915/i915_reg.h | 1 + drivers/gpu/drm/i915/intel_lrc.c | 7 +++ 2 files changed, 8 insertions(+

[Intel-gfx] [PATCH 1/2] drm/i915/gen9: Add WaInPlaceDecompressionHang

2016-07-20 Thread Mika Kuoppala
From: Mika Kuoppala Add this workaround to prevent hang when in place compression is used. References: HSD#2135774 Cc: sta...@vger.kernel.org Signed-off-by: Mika Kuoppala Reviewed-by: Arun Siluvery --- drivers/gpu/drm/i915/i915_drv.h | 2 ++ drivers/gpu/drm/i915/i915_reg.h |

[Intel-gfx] [PATCH 2/2] drm/i915/gen9: Add WaDisableGatherAtSetShaderCommonSlice

2016-07-20 Thread Mika Kuoppala
From: Mika Kuoppala Add WaDisableGatherAtSetShaderCommonSlice for all gen9 as stated by bspec. The bspec told to put this workaround to the per ctx bb. Initial implementation and subsequent review were done based on bspec. Arun raised a suspicion that this would belong to indirect bb instead and

Re: [Intel-gfx] [PATCH 1/2] doc/sphinx: Enable keep_warnings

2016-07-20 Thread Daniel Vetter
On Wed, Jul 20, 2016 at 12:55 PM, Markus Heiser wrote: > Hi Daniel, hi Mauro, > > Am 19.07.2016 um 17:32 schrieb Daniel Vetter : > >> On Tue, Jul 19, 2016 at 5:25 PM, Daniel Vetter >> wrote: >>> On Tue, Jul 19, 2016 at 4:59 PM, Markus Heiser >>> wrote: Am 19.07.2016 um 13:42 schrieb D

Re: [Intel-gfx] [PATCH 3/9] drm/i915: Wrap drm_gem_object_lookup in i915_gem_object_lookup

2016-07-20 Thread Dave Gordon
On 20/07/16 09:59, Chris Wilson wrote: For symmetry with a forthcoming i915_gem_object_get() and i915_gem_object_pu(). Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_drv.h| 20 +++- drivers/gpu/drm/i915/i915_gem.c| 58 +- dr

Re: [Intel-gfx] [PATCH 09/17] drm/i915: Debugfs support for GuC logging control

2016-07-20 Thread Goel, Akash
On 7/20/2016 4:10 PM, Tvrtko Ursulin wrote: On 20/07/16 11:12, Goel, Akash wrote: On 7/20/2016 3:17 PM, Tvrtko Ursulin wrote: +ret = -EINVAL; +goto end; +} + +intel_runtime_pm_get(dev_priv); +ret = i915_guc_log_control(dev, val); +intel_runtime_pm_put(dev_priv

Re: [Intel-gfx] [PATCH 3/9] drm/i915: Wrap drm_gem_object_lookup in i915_gem_object_lookup

2016-07-20 Thread Joonas Lahtinen
On ke, 2016-07-20 at 09:59 +0100, Chris Wilson wrote: > For symmetry with a forthcoming i915_gem_object_get() and > i915_gem_object_pu(). > > Signed-off-by: Chris Wilson > --- >  drivers/gpu/drm/i915/i915_drv.h| 20 +++- >  drivers/gpu/drm/i915/i915_gem.c| 58 > +++

Re: [Intel-gfx] [PATCH 3/9] drm/i915: Wrap drm_gem_object_lookup in i915_gem_object_lookup

2016-07-20 Thread Chris Wilson
On Wed, Jul 20, 2016 at 12:28:16PM +0100, Dave Gordon wrote: > On 20/07/16 09:59, Chris Wilson wrote: > >For symmetry with a forthcoming i915_gem_object_get() and > >i915_gem_object_pu(). > > > >Signed-off-by: Chris Wilson > >--- > > drivers/gpu/drm/i915/i915_drv.h| 20 +++- > > d

Re: [Intel-gfx] [PATCH 4/9] drm/i915: Wrap drm_gem_object_reference in i915_gem_object_get

2016-07-20 Thread Dave Gordon
On 20/07/16 09:59, Chris Wilson wrote: Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_drv.h| 11 +++ drivers/gpu/drm/i915/i915_gem.c| 4 ++-- drivers/gpu/drm/i915/i915_gem_dmabuf.c | 3 +-- drivers/gpu/drm/i915/i915_gem_evict.c | 2 +-

Re: [Intel-gfx] [PATCH 5/9] drm/i915: Rename drm_gem_object_unreference in preparation for lockless free

2016-07-20 Thread Joonas Lahtinen
On ke, 2016-07-20 at 09:59 +0100, Chris Wilson wrote: > diff --git a/drivers/gpu/drm/i915/intel_guc_loader.c > b/drivers/gpu/drm/i915/intel_guc_loader.c > index 605c69658d2c..75a1496ceb6f 100644 > --- a/drivers/gpu/drm/i915/intel_guc_loader.c > +++ b/drivers/gpu/drm/i915/intel_guc_loader.c > @@ -

Re: [Intel-gfx] [PATCH 4/9] drm/i915: Wrap drm_gem_object_reference in i915_gem_object_get

2016-07-20 Thread Joonas Lahtinen
On ke, 2016-07-20 at 09:59 +0100, Chris Wilson wrote: > Signed-off-by: Chris Wilson Mechanical stuff, Reviewed-by: Joonas Lahtinen > --- >  drivers/gpu/drm/i915/i915_drv.h| 11 +++ >  drivers/gpu/drm/i915/i915_gem.c|  4 ++-- >  drivers/gpu/drm/i915/i915_gem_dmabu

Re: [Intel-gfx] [PATCH 4/9] drm/i915: Wrap drm_gem_object_reference in i915_gem_object_get

2016-07-20 Thread Chris Wilson
On Wed, Jul 20, 2016 at 12:38:24PM +0100, Dave Gordon wrote: > On 20/07/16 09:59, Chris Wilson wrote: > >diff --git a/drivers/gpu/drm/i915/intel_display.c > >b/drivers/gpu/drm/i915/intel_display.c > >index 77d320584478..84904a2d3fcd 100644 > >--- a/drivers/gpu/drm/i915/intel_display.c > >+++ b/dri

Re: [Intel-gfx] [PATCH 09/17] drm/i915: Debugfs support for GuC logging control

2016-07-20 Thread Tvrtko Ursulin
On 20/07/16 12:29, Goel, Akash wrote: On 7/20/2016 4:10 PM, Tvrtko Ursulin wrote: On 20/07/16 11:12, Goel, Akash wrote: On 7/20/2016 3:17 PM, Tvrtko Ursulin wrote: +ret = -EINVAL; +goto end; +} + +intel_runtime_pm_get(dev_priv); +ret = i915_guc_log_control(dev, val

Re: [Intel-gfx] [PATCH 5/9] drm/i915: Rename drm_gem_object_unreference in preparation for lockless free

2016-07-20 Thread Dave Gordon
On 20/07/16 12:43, Joonas Lahtinen wrote: On ke, 2016-07-20 at 09:59 +0100, Chris Wilson wrote: diff --git a/drivers/gpu/drm/i915/intel_guc_loader.c b/drivers/gpu/drm/i915/intel_guc_loader.c index 605c69658d2c..75a1496ceb6f 100644 --- a/drivers/gpu/drm/i915/intel_guc_loader.c +++ b/drivers/gpu

Re: [Intel-gfx] [PATCH 8/9] drm/i915: Rename ring->virtual_start as ring->vaddr

2016-07-20 Thread Dave Gordon
On 20/07/16 10:00, Chris Wilson wrote: Just a different colour to better match virtual addresses elsewhere. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_irq.c | 2 +- drivers/gpu/drm/i915/intel_ringbuffer.c | 11 +-- drivers/gpu/drm/i915/intel_ringbuffer.h | 4

Re: [Intel-gfx] [PATCH 3/9] drm/i915: Wrap drm_gem_object_lookup in i915_gem_object_lookup

2016-07-20 Thread Chris Wilson
On Wed, Jul 20, 2016 at 02:38:19PM +0300, Joonas Lahtinen wrote: > On ke, 2016-07-20 at 09:59 +0100, Chris Wilson wrote: > > For symmetry with a forthcoming i915_gem_object_get() and > > i915_gem_object_pu(). > > > > Signed-off-by: Chris Wilson > > --- > >  drivers/gpu/drm/i915/i915_drv.h

Re: [Intel-gfx] [PATCH 6/9] drm/i915: Rename drm_gem_object_unreference_unlocked in preparation for lockless free

2016-07-20 Thread Joonas Lahtinen
On ke, 2016-07-20 at 09:59 +0100, Chris Wilson wrote: > Signed-off-by: Chris Wilson No hidden treasures in this one, Reviewed-by: Joonas Lahtinen Regards, Joonas > --- >  drivers/gpu/drm/i915/i915_drv.h | 10 ++ >  drivers/gpu/drm/i915/i915_gem.c | 10 +- >  driv

[Intel-gfx] ✗ Ro.CI.BAT: failure for series starting with [1/2] drm/i915/gen9: Add WaInPlaceDecompressionHang

2016-07-20 Thread Patchwork
== Series Details == Series: series starting with [1/2] drm/i915/gen9: Add WaInPlaceDecompressionHang URL : https://patchwork.freedesktop.org/series/10088/ State : failure == Summary == Series 10088v1 Series without cover letter http://patchwork.freedesktop.org/api/1.0/series/10088/revisions/1

Re: [Intel-gfx] [PATCH 8/9] drm/i915: Rename ring->virtual_start as ring->vaddr

2016-07-20 Thread Joonas Lahtinen
On ke, 2016-07-20 at 10:00 +0100, Chris Wilson wrote: > Just a different colour to better match virtual addresses elsewhere. > > Signed-off-by: Chris Wilson Reviewed-by: Joonas Lahtinen > --- >  drivers/gpu/drm/i915/i915_irq.c |  2 +- >  drivers/gpu/drm/i915/intel_ringbuffer.c | 11 +++

Re: [Intel-gfx] [PATCH 5/9] drm/i915: Rename drm_gem_object_unreference in preparation for lockless free

2016-07-20 Thread Chris Wilson
On Wed, Jul 20, 2016 at 12:51:31PM +0100, Dave Gordon wrote: > On 20/07/16 12:43, Joonas Lahtinen wrote: > >On ke, 2016-07-20 at 09:59 +0100, Chris Wilson wrote: > > > >>diff --git a/drivers/gpu/drm/i915/intel_guc_loader.c > >>b/drivers/gpu/drm/i915/intel_guc_loader.c > >>index 605c69658d2c..75a14

Re: [Intel-gfx] [PATCH 09/17] drm/i915: Debugfs support for GuC logging control

2016-07-20 Thread Goel, Akash
On 7/20/2016 5:20 PM, Tvrtko Ursulin wrote: On 20/07/16 12:29, Goel, Akash wrote: On 7/20/2016 4:10 PM, Tvrtko Ursulin wrote: On 20/07/16 11:12, Goel, Akash wrote: On 7/20/2016 3:17 PM, Tvrtko Ursulin wrote: +DEFINE_SIMPLE_ATTRIBUTE(i915_guc_log_control_fops, +NULL, i915_guc_

Re: [Intel-gfx] [PATCH i-g-t v2 03/15] kms_psr_sink_crc: Use for_each_pipe_with_valid_output to find a valid config.

2016-07-20 Thread Ander Conselvan De Oliveira
On Wed, 2016-07-20 at 09:53 +0200, Maarten Lankhorst wrote: > Op 19-07-16 om 15:58 schreef Ander Conselvan De Oliveira: > > > > On Fri, 2016-07-15 at 14:15 +0300, Ander Conselvan De Oliveira wrote: > > > > > > On Wed, 2016-07-06 at 11:55 +0200, Maarten Lankhorst wrote: > > > > > > > > This is th

Re: [Intel-gfx] [PATCH 9/9] drm/i915: Convert i915_semaphores_is_enabled over to early sanitize

2016-07-20 Thread Joonas Lahtinen
On ke, 2016-07-20 at 10:00 +0100, Chris Wilson wrote: > Rather than recomputing whether semaphores are enabled, we can do that > computation once during early initialisation as the i915.semaphores > module parameter is now read-only. Has been since 2014 at least. > > Signed-off-by: Chris Wilson

[Intel-gfx] [CI 1/9] drm/i915: Rename request reference/unreference to get/put

2016-07-20 Thread Chris Wilson
Now that we derive requests from struct fence, swap over to its nomenclature for references. It's shorter and more idiomatic across the kernel. s/i915_gem_request_reference/i915_gem_request_get/ s/i915_gem_request_unreference/i915_gem_request_put/ Signed-off-by: Chris Wilson Reviewed-by: Daniel

[Intel-gfx] [CI 5/9] drm/i915: Rename drm_gem_object_unreference in preparation for lockless free

2016-07-20 Thread Chris Wilson
Ultimately wraps kref_put(), so adopt its nomenclature for consistency with other subsystems. s/drm_gem_object_unreference/i915_gem_object_put/ Signed-off-by: Chris Wilson Link: http://patchwork.freedesktop.org/patch/msgid/1469005202-9659-6-git-send-email-ch...@chris-wilson.co.uk Reviewed-by: J

[Intel-gfx] [CI 8/9] drm/i915: Rename ring->virtual_start as ring->vaddr

2016-07-20 Thread Chris Wilson
Just a different colour to better match virtual addresses elsewhere. s/ring->virtual_start/ring->vaddr/ Signed-off-by: Chris Wilson Link: http://patchwork.freedesktop.org/patch/msgid/1469005202-9659-9-git-send-email-ch...@chris-wilson.co.uk Reviewed-by: Dave Gordon Reviewed-by: Joonas Lahtinen

[Intel-gfx] [CI 3/9] drm/i915: Wrap drm_gem_object_lookup in i915_gem_object_lookup

2016-07-20 Thread Chris Wilson
For symmetry with a forthcoming i915_gem_object_get() and i915_gem_object_put(). Signed-off-by: Chris Wilson Link: http://patchwork.freedesktop.org/patch/msgid/1469005202-9659-4-git-send-email-ch...@chris-wilson.co.uk Reviewed-by: Dave Gordon --- drivers/gpu/drm/i915/i915_drv.h| 20 +++

[Intel-gfx] [CI 7/9] drm/i915: Treat ringbuffer writes as write to normal memory

2016-07-20 Thread Chris Wilson
Ringbuffers are now being written to either through LLC or WC paths, so treating them as simply iomem is no longer adequate. However, for the older !llc hardware, the hardware is documentated as treating the TAIL register update as serialising, so we can relax the barriers when filling the rings (b

[Intel-gfx] [CI 9/9] drm/i915: Convert i915_semaphores_is_enabled over to early sanitize

2016-07-20 Thread Chris Wilson
Rather than recomputing whether semaphores are enabled, we can do that computation once during early initialisation as the i915.semaphores module parameter is now read-only. s/i915_semaphores_is_enabled/i915.semaphores/ v2: Add the state to the debug dmesg as well Signed-off-by: Chris Wilson Li

[Intel-gfx] [CI 6/9] drm/i915: Rename drm_gem_object_unreference_unlocked in preparation for lockless free

2016-07-20 Thread Chris Wilson
Whilst this ultimately wraps kref_put_mutex(), our goal here is the lockless variant, so keep the _unlocked() suffix until we need it no more. s/drm_gem_object_unreference_unlocked/i915_gem_object_put_unlocked/ Signed-off-by: Chris Wilson Link: http://patchwork.freedesktop.org/patch/msgid/14690

[Intel-gfx] [CI 2/9] drm/i915: Rename i915_gem_context_reference/unreference()

2016-07-20 Thread Chris Wilson
As these are wrappers around kref_get/kref_put() it is preferable to follow the naming convention and use the same verb get/put in our wrapper names for manipulating a reference to the context. s/i915_gem_context_reference/i915_gem_context_get/ s/i915_gem_context_unreference/i915_gem_context_put/

[Intel-gfx] [CI 4/9] drm/i915: Wrap drm_gem_object_reference in i915_gem_object_get

2016-07-20 Thread Chris Wilson
Ultimately wraps kref_get(), so adopt its nomenclature for consistency with other subsystems. s/drm_gem_object_reference/i915_gem_object_get/ Signed-off-by: Chris Wilson Link: http://patchwork.freedesktop.org/patch/msgid/1469005202-9659-5-git-send-email-ch...@chris-wilson.co.uk Reviewed-by: Dav

Re: [Intel-gfx] [PATCH] drm: drm_connector->s/connector_id/index/ for consistency

2016-07-20 Thread Chris Wilson
On Tue, Jul 19, 2016 at 06:25:01PM +0200, Daniel Vetter wrote: > connector_id in the uapi actually means drm_connector->base.id, which > is something entirely different. And ->index is also consistent with > plane/encoder/CRTCS and the various drm_*_index() functions. > > While at it also improve/

Re: [Intel-gfx] ✗ Ro.CI.BAT: failure for series starting with [1/2] drm/i915/gen9: Add WaInPlaceDecompressionHang

2016-07-20 Thread Joonas Lahtinen
On ke, 2016-07-20 at 12:05 +, Patchwork wrote: > == Series Details == > > Series: series starting with [1/2] drm/i915/gen9: Add > WaInPlaceDecompressionHang > URL   : https://patchwork.freedesktop.org/series/10088/ > State : failure > > == Summary == > > Series 10088v1 Series without cover

Re: [Intel-gfx] [PATCH 12/13] drm/i915: Consolidate legacy semaphore initialization

2016-07-20 Thread Dave Gordon
On 20/07/16 10:54, Tvrtko Ursulin wrote: On 19/07/16 19:38, Dave Gordon wrote: On 15/07/16 14:13, Tvrtko Ursulin wrote: On 29/06/16 17:00, Chris Wilson wrote: On Wed, Jun 29, 2016 at 04:41:58PM +0100, Tvrtko Ursulin wrote: On 29/06/16 16:34, Chris Wilson wrote: On Wed, Jun 29, 2016 at 04:

Re: [Intel-gfx] [PATCH i-g-t v2 05/15] tests/kms: Clean up more users of unassigned pipes.

2016-07-20 Thread Ander Conselvan De Oliveira
On Wed, 2016-07-06 at 11:55 +0200, Maarten Lankhorst wrote: > Use for_each_pipe_with_valid_output instead. > > Signed-off-by: Maarten Lankhorst > --- >  tests/kms_crtc_background_color.c |  3 +-- >  tests/kms_flip_tiling.c   | 50 +++--- > - >  tests/kms_pan

Re: [Intel-gfx] ✗ Ro.CI.BAT: failure for series starting with [1/2] drm/i915/gen9: Add WaInPlaceDecompressionHang

2016-07-20 Thread Chris Wilson
On Wed, Jul 20, 2016 at 03:49:00PM +0300, Joonas Lahtinen wrote: > On ke, 2016-07-20 at 12:05 +, Patchwork wrote: > > == Series Details == > > > > Series: series starting with [1/2] drm/i915/gen9: Add > > WaInPlaceDecompressionHang > > URL   : https://patchwork.freedesktop.org/series/10088/ >

[Intel-gfx] ✗ Ro.CI.BAT: failure for series starting with [CI,1/9] drm/i915: Rename request reference/unreference to get/put

2016-07-20 Thread Patchwork
== Series Details == Series: series starting with [CI,1/9] drm/i915: Rename request reference/unreference to get/put URL : https://patchwork.freedesktop.org/series/10089/ State : failure == Summary == Series 10089v1 Series without cover letter http://patchwork.freedesktop.org/api/1.0/series/1

Re: [Intel-gfx] ✗ Ro.CI.BAT: failure for series starting with [1/2] drm/i915/gen9: Add WaInPlaceDecompressionHang

2016-07-20 Thread Joonas Lahtinen
On ke, 2016-07-20 at 13:50 +0100, Chris Wilson wrote: > On Wed, Jul 20, 2016 at 03:49:00PM +0300, Joonas Lahtinen wrote: > > > > On ke, 2016-07-20 at 12:05 +, Patchwork wrote: > > > > > > == Series Details == > > > > > > Series: series starting with [1/2] drm/i915/gen9: Add > > > WaInPlaceD

Re: [Intel-gfx] [PATCH v3 0/4] Enable lspcon support for GEN9 devices

2016-07-20 Thread Ville Syrjälä
On Tue, Jul 05, 2016 at 06:35:46PM +0530, Shashank Sharma wrote: > LSPCON is essentially a dp++->hdmi adapter with dual mode of operation. > > These modes are: > - Level Shifter mode: In LS mode, this device works as a type2 dp->hdmi > passive dongle, which steps up DP++ output to appropriate HDMI

Re: [Intel-gfx] ✗ Ro.CI.BAT: failure for series starting with [1/2] drm/i915/gen9: Add WaInPlaceDecompressionHang

2016-07-20 Thread Dave Gordon
On 20/07/16 13:50, Chris Wilson wrote: On Wed, Jul 20, 2016 at 03:49:00PM +0300, Joonas Lahtinen wrote: On ke, 2016-07-20 at 12:05 +, Patchwork wrote: == Series Details == Series: series starting with [1/2] drm/i915/gen9: Add WaInPlaceDecompressionHang URL : https://patchwork.freedesktop

[Intel-gfx] Unify request construction

2016-07-20 Thread Chris Wilson
This deduplicates a lot of code because I only want to fix the bugs within it once. -Chris ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx

[Intel-gfx] [PATCH 07/18] drm/i915: Rename intel_pin_and_map_ring()

2016-07-20 Thread Chris Wilson
For more consistent oop-naming, we would use intel_ring_verb, so pick intel_ring_pin() and intel_ring_unpin(). Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/intel_lrc.c| 4 ++-- drivers/gpu/drm/i915/intel_ringbuffer.c | 38 - drivers/gpu/drm/i915/i

[Intel-gfx] [PATCH 08/18] drm/i915: Remove obsolete engine->gpu_caches_dirty

2016-07-20 Thread Chris Wilson
Space for flushing the GPU cache prior to completing the request is preallocated and so cannot fail. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_gem_context.c| 2 +- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 9 +--- drivers/gpu/drm/i915/i915_gem_gtt.c| 18

[Intel-gfx] [PATCH 05/18] drm/i915: Rename struct intel_ringbuffer to struct intel_ring

2016-07-20 Thread Chris Wilson
The state stored in this struct is not only the information about the buffer object, but the ring used to communicate with the hardware. Using buffer here is overly specific and, for me at least, conflates with the notion of buffer objects themselves. Signed-off-by: Chris Wilson --- drivers/gpu/

[Intel-gfx] [PATCH 01/18] drm/i915: Unify intel_logical_ring_emit and intel_ring_emit

2016-07-20 Thread Chris Wilson
Both perform the same actions with more or less indirection, so just unify the code. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_gem_context.c| 54 ++-- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 53 ++-- drivers/gpu/drm/i915/i915_gem_gtt.c| 62 ++--- drivers/gpu/d

[Intel-gfx] [PATCH 04/18] drm/i915: Rename intel_context[engine].ringbuf

2016-07-20 Thread Chris Wilson
Perform s/ringbuf/ring/ on the context struct for consistency with the ring/engine split. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_debugfs.c| 8 drivers/gpu/drm/i915/i915_drv.h| 2 +- drivers/gpu/drm/i915/i915_gem_context.c| 4 ++-- drivers/gp

[Intel-gfx] [PATCH 03/18] drm/i915: Rename backpointer from intel_ringbuffer to intel_engine_cs

2016-07-20 Thread Chris Wilson
Having ringbuf->ring point to an engine is confusing, so rename it once again to ring->engine. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/intel_ringbuffer.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drive

[Intel-gfx] [PATCH 06/18] drm/i915: Rename residual ringbuf parameters

2016-07-20 Thread Chris Wilson
Now that we have a clear ring/engine split and a struct intel_ring, we no longer need the stopgap ringbuf names. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/intel_ringbuffer.c | 66 - drivers/gpu/drm/i915/intel_ringbuffer.h | 6 +-- 2 files changed, 36 i

[Intel-gfx] [PATCH 02/18] drm/i915: Rename request->ringbuf to request->ring

2016-07-20 Thread Chris Wilson
Now that we have disambuigated ring and engine, we can use the clearer and more consistent name for the intel_ringbuffer pointer in the request. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_gem_context.c| 4 +- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 4 +- drivers/gpu/drm

[Intel-gfx] [PATCH 16/18] drm/i915: Remove duplicate golden render state init from execlists

2016-07-20 Thread Chris Wilson
Now that we use the same vfuncs for emitting the batch buffer in both execlists and legacy, the golden render state initialisation is identical between both. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_gem_render_state.c | 23 +-- drivers/gpu/drm/i915/i915_gem_rende

[Intel-gfx] [PATCH 11/18] drm/i915: Convert engine->write_tail to operate on a request

2016-07-20 Thread Chris Wilson
If we rewrite the I915_WRITE_TAIL specialisation for the legacy ringbuffer as submitting the request onto the ringbuffer, we can unify the vfunc with both execlists and GuC in the next patch. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_gem_request.c | 7 ++--- drivers/gpu/drm/i915

[Intel-gfx] [PATCH 14/18] drm/i915: Reuse legacy breadcrumbs + tail emission

2016-07-20 Thread Chris Wilson
As GEN6+ is now a simple variant on the basic breadcrumbs + tail write, reuse the common code. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/intel_ringbuffer.c | 71 ++--- 1 file changed, 29 insertions(+), 42 deletions(-) diff --git a/drivers/gpu/drm/i915/inte

[Intel-gfx] [PATCH 18/18] drm/i915: Simplify calling engine->sync_to

2016-07-20 Thread Chris Wilson
Since requests can no longer be generated as a side-effect of intel_ring_begin(), we know that the seqno will be unchanged during ring-emission. This predicatablity then means we do not have to check for the seqno wrapping around whilst emitting the semaphore for engine->sync_to(). Signed-off-by:

[Intel-gfx] [PATCH 17/18] drm/i915: Unify legacy/execlists submit_execbuf callbacks

2016-07-20 Thread Chris Wilson
Now that emitting requests is identical between legacy and execlists, we can use the same function to build up the ring for submitting to either engine. (With the exception of i915_switch_contexts(), but in time that will also be handled gracefully.) Signed-off-by: Chris Wilson --- drivers/gpu/d

[Intel-gfx] [PATCH 13/18] drm/i915: Stop passing caller's num_dwords to engine->semaphore.signal()

2016-07-20 Thread Chris Wilson
Rather than pass in the num_dwords that the caller wishes to use after the signal command packet, split the breadcrumb emission into two phases and have both the signal and breadcrumb individiually acquire space on the ring. This makes the interface simpler for the reader, and will simplify for pat

[Intel-gfx] [PATCH 12/18] drm/i915: Unify request submission

2016-07-20 Thread Chris Wilson
Move request submission from emit_request into its own common vfunc from i915_add_request(). Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_gem_request.c| 7 +++ drivers/gpu/drm/i915/i915_guc_submission.c | 9 ++--- drivers/gpu/drm/i915/intel_guc.h | 1 - driv

[Intel-gfx] [PATCH 15/18] drm/i915/ringbuffer: Specialise SNB+ request emission for semaphores

2016-07-20 Thread Chris Wilson
As gen6_emit_request() only differs from i9xx_emit_request() when semaphores are enabled, only use the specialised vfunc in that scenario. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/intel_ringbuffer.c | 18 -- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git

[Intel-gfx] [PATCH 10/18] drm/i915: Unify legacy/execlists emission of MI_BATCHBUFFER_START

2016-07-20 Thread Chris Wilson
Both the ->dispatch_execbuffer and ->emit_bb_start callbacks do exactly the same thing, add MI_BATCHBUFFER_START to the request's ringbuffer - we need only one vfunc. Signed-off-by: Chris Wilson --- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 6 ++-- drivers/gpu/drm/i915/i915_gem_render_stat

[Intel-gfx] [PATCH 09/18] drm/i915: Simplify request_alloc by returning the allocated request

2016-07-20 Thread Chris Wilson
If is simpler and leads to more readable code through the callstack if the allocation returns the allocated struct through the return value. The importance of this is that it no longer looks like we accidentally allocate requests as side-effect of calling certain functions. Signed-off-by: Chris W

[Intel-gfx] [PATCH 0/7] drm/i915: Per-plane rotation, fixes, and mirroring for CHV

2016-07-20 Thread ville . syrjala
From: Ville Syrjälä Found some patches lying about that implement the per-plane rotation property I've been going on about occasionally. There's also a fix for atomic to reject invalid rotation angles. I also tossed in support for horizontal mirroring on CHV, because I could. Series available he

[Intel-gfx] i915 fbdev AB/BA locking issue

2016-07-20 Thread Daniel Stone
Hi Chris, I'm assuming this has come from the async fbdev work: I'm now (today's din) getting lockdep splat about AB/BA between the fbdev notifier lock versus mode_config. It's attached below; seems like it should probably be fixed up. I guess it only shows on systems with a backlight (in my case,

[Intel-gfx] [PATCH 2/7] drm/atomic: Reject attempts to use multiple rotation angles at once

2016-07-20 Thread ville . syrjala
From: Ville Syrjälä The rotation property should only accept exactly one rotation angle at once. Let's reject attempts to set none or multiple angles. Testcase: igt/kms_rotation_crc/bad-rotation Signed-off-by: Ville Syrjälä --- drivers/gpu/drm/drm_atomic.c | 2 ++ 1 file changed, 2 insertions(

[Intel-gfx] [PATCH 4/7] drm/i915: Use the per-plane rotation property

2016-07-20 Thread ville . syrjala
From: Ville Syrjälä On certain platforms not all planes support the same set of rotations/reflections, so let's use the per-plane property for this. This is already a problem on SKL when we use the legay cursor plane as it only supports 0|180 whereas the universal planes support 0|90|180|270, an

[Intel-gfx] [PATCH 5/7] drm/i915: Use & instead if == to check for rotations

2016-07-20 Thread ville . syrjala
From: Ville Syrjälä Using == to check for 180 degree rotation only works as long as the reflection bits aren't set. That will change soon enough for CHV, so let's stop doing things the wrong way. Signed-off-by: Ville Syrjälä --- drivers/gpu/drm/i915/intel_display.c | 9 + drivers/gpu/d

[Intel-gfx] [PATCH 7/7] drm/i915: Add horizontal mirroring support for CHV pipe B planes

2016-07-20 Thread ville . syrjala
From: Ville Syrjälä The primary and sprite planes on CHV pipe B support horizontal mirroring. Expose it to the world. Sadly the hardware ignores the mirror bit when the rotate bit is set, so we'll have to reject the 180+X case. Signed-off-by: Ville Syrjälä --- drivers/gpu/drm/i915/intel_atomi

  1   2   3   >