* [PATCH] drm/i915: Don't complain when there is no workaround.
@ 2014-12-17 16:34 Rodrigo Vivi
2014-12-18 7:19 ` shuang.he
2014-12-18 8:16 ` Daniel Vetter
0 siblings, 2 replies; 6+ messages in thread
From: Rodrigo Vivi @ 2014-12-17 16:34 UTC (permalink / raw)
To: intel-gfx; +Cc: Rodrigo Vivi
When we don't have any workaround to emit we should celebrate, not bother.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
drivers/gpu/drm/i915/intel_lrc.c | 2 +-
drivers/gpu/drm/i915/intel_ringbuffer.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index 7670a0f..0bb50f6 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -1096,7 +1096,7 @@ static int intel_logical_ring_workarounds_emit(struct intel_engine_cs *ring,
struct drm_i915_private *dev_priv = dev->dev_private;
struct i915_workarounds *w = &dev_priv->workarounds;
- if (WARN_ON_ONCE(w->count == 0))
+ if (w->count == 0)
return 0;
ring->gpu_caches_dirty = true;
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 12a36f0..3d99bb1 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -682,7 +682,7 @@ static int intel_ring_workarounds_emit(struct intel_engine_cs *ring,
struct drm_i915_private *dev_priv = dev->dev_private;
struct i915_workarounds *w = &dev_priv->workarounds;
- if (WARN_ON_ONCE(w->count == 0))
+ if (w->count == 0)
return 0;
ring->gpu_caches_dirty = true;
--
1.9.3
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] drm/i915: Don't complain when there is no workaround.
2014-12-17 16:34 [PATCH] drm/i915: Don't complain when there is no workaround Rodrigo Vivi
@ 2014-12-18 7:19 ` shuang.he
2014-12-18 8:16 ` Daniel Vetter
1 sibling, 0 replies; 6+ messages in thread
From: shuang.he @ 2014-12-18 7:19 UTC (permalink / raw)
To: shuang.he, intel-gfx, rodrigo.vivi
Tested-By: PRC QA PRTS (Patch Regression Test System Contact: shuang.he@intel.com)
-------------------------------------Summary-------------------------------------
Platform Delta drm-intel-nightly Series Applied
PNV 364/364 364/364
ILK +1-3 364/366 362/366
SNB -1 448/450 447/450
IVB 497/498 497/498
BYT 289/289 289/289
HSW 563/564 563/564
BDW 416/417 416/417
-------------------------------------Detailed-------------------------------------
Platform Test drm-intel-nightly Series Applied
ILK igt_kms_flip_bcs-flip-vs-modeset-interruptible DMESG_WARN(1, M26)PASS(3, M37M26) PASS(1, M26)
*ILK igt_kms_flip_busy-flip-interruptible PASS(2, M26) DMESG_WARN(1, M26)
*ILK igt_kms_flip_wf_vblank-ts-check PASS(2, M26) DMESG_WARN(1, M26)
*ILK igt_kms_flip_wf_vblank-vs-modeset-interruptible PASS(2, M26) DMESG_WARN(1, M26)
*SNB igt_gem_concurrent_blit_gtt-rcs-early-read-forked PASS(2, M35M22) FAIL(1, M22)
Note: You need to pay more attention to line start with '*'
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] drm/i915: Don't complain when there is no workaround.
2014-12-17 16:34 [PATCH] drm/i915: Don't complain when there is no workaround Rodrigo Vivi
2014-12-18 7:19 ` shuang.he
@ 2014-12-18 8:16 ` Daniel Vetter
2014-12-18 16:26 ` Dave Gordon
1 sibling, 1 reply; 6+ messages in thread
From: Daniel Vetter @ 2014-12-18 8:16 UTC (permalink / raw)
To: Rodrigo Vivi; +Cc: intel-gfx
On Wed, Dec 17, 2014 at 08:34:41AM -0800, Rodrigo Vivi wrote:
> When we don't have any workaround to emit we should celebrate, not bother.
Well except that on the platforms where this fires we really should have
some, most likely. This is in a way similar to all the other WARN_ON cases
we have to make sure nothing gets lost in platform enabling.
-Daniel
>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> ---
> drivers/gpu/drm/i915/intel_lrc.c | 2 +-
> drivers/gpu/drm/i915/intel_ringbuffer.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index 7670a0f..0bb50f6 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -1096,7 +1096,7 @@ static int intel_logical_ring_workarounds_emit(struct intel_engine_cs *ring,
> struct drm_i915_private *dev_priv = dev->dev_private;
> struct i915_workarounds *w = &dev_priv->workarounds;
>
> - if (WARN_ON_ONCE(w->count == 0))
> + if (w->count == 0)
> return 0;
>
> ring->gpu_caches_dirty = true;
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index 12a36f0..3d99bb1 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -682,7 +682,7 @@ static int intel_ring_workarounds_emit(struct intel_engine_cs *ring,
> struct drm_i915_private *dev_priv = dev->dev_private;
> struct i915_workarounds *w = &dev_priv->workarounds;
>
> - if (WARN_ON_ONCE(w->count == 0))
> + if (w->count == 0)
> return 0;
>
> ring->gpu_caches_dirty = true;
> --
> 1.9.3
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] drm/i915: Don't complain when there is no workaround.
2014-12-18 8:16 ` Daniel Vetter
@ 2014-12-18 16:26 ` Dave Gordon
2014-12-18 18:47 ` Rodrigo Vivi
0 siblings, 1 reply; 6+ messages in thread
From: Dave Gordon @ 2014-12-18 16:26 UTC (permalink / raw)
To: intel-gfx
On 18/12/14 08:16, Daniel Vetter wrote:
> On Wed, Dec 17, 2014 at 08:34:41AM -0800, Rodrigo Vivi wrote:
>> When we don't have any workaround to emit we should celebrate, not bother.
>
> Well except that on the platforms where this fires we really should have
> some, most likely. This is in a way similar to all the other WARN_ON cases
> we have to make sure nothing gets lost in platform enabling.
> -Daniel
You could have a convention that
(count == 0)
means "I haven't filled this in yet" (and generates a warning), whereas
(count == I915_NO_WORKAROUNDS_REQUIRED)
(which can be defined as (~0)) means "I haven't forgotten, there really
aren't any workarounds" and suppresses the warning.
Of course, any /other/ value > I915_MAX_WA_REGS should definitely give a
warning, preferably at compile time!
.Dave
>>
>> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
>> ---
>> drivers/gpu/drm/i915/intel_lrc.c | 2 +-
>> drivers/gpu/drm/i915/intel_ringbuffer.c | 2 +-
>> 2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
>> index 7670a0f..0bb50f6 100644
>> --- a/drivers/gpu/drm/i915/intel_lrc.c
>> +++ b/drivers/gpu/drm/i915/intel_lrc.c
>> @@ -1096,7 +1096,7 @@ static int intel_logical_ring_workarounds_emit(struct intel_engine_cs *ring,
>> struct drm_i915_private *dev_priv = dev->dev_private;
>> struct i915_workarounds *w = &dev_priv->workarounds;
>>
>> - if (WARN_ON_ONCE(w->count == 0))
>> + if (w->count == 0)
>> return 0;
>>
>> ring->gpu_caches_dirty = true;
>> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
>> index 12a36f0..3d99bb1 100644
>> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
>> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
>> @@ -682,7 +682,7 @@ static int intel_ring_workarounds_emit(struct intel_engine_cs *ring,
>> struct drm_i915_private *dev_priv = dev->dev_private;
>> struct i915_workarounds *w = &dev_priv->workarounds;
>>
>> - if (WARN_ON_ONCE(w->count == 0))
>> + if (w->count == 0)
>> return 0;
>>
>> ring->gpu_caches_dirty = true;
>> --
>> 1.9.3
>>
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] drm/i915: Don't complain when there is no workaround.
2014-12-18 16:26 ` Dave Gordon
@ 2014-12-18 18:47 ` Rodrigo Vivi
2014-12-18 19:17 ` Ville Syrjälä
0 siblings, 1 reply; 6+ messages in thread
From: Rodrigo Vivi @ 2014-12-18 18:47 UTC (permalink / raw)
To: Dave Gordon; +Cc: intel-gfx
Yeah, but Skylake is running and we didn't need any W/A here yet. The
warning is just disturbing dmesg with 3 ops and not forcing uns to
hunt for missing workarouinds.
We add W/A based on specific needs, not based on counts.
On Thu, Dec 18, 2014 at 8:26 AM, Dave Gordon <david.s.gordon@intel.com> wrote:
> On 18/12/14 08:16, Daniel Vetter wrote:
>> On Wed, Dec 17, 2014 at 08:34:41AM -0800, Rodrigo Vivi wrote:
>>> When we don't have any workaround to emit we should celebrate, not bother.
>>
>> Well except that on the platforms where this fires we really should have
>> some, most likely. This is in a way similar to all the other WARN_ON cases
>> we have to make sure nothing gets lost in platform enabling.
>> -Daniel
>
> You could have a convention that
> (count == 0)
> means "I haven't filled this in yet" (and generates a warning), whereas
> (count == I915_NO_WORKAROUNDS_REQUIRED)
> (which can be defined as (~0)) means "I haven't forgotten, there really
> aren't any workarounds" and suppresses the warning.
>
> Of course, any /other/ value > I915_MAX_WA_REGS should definitely give a
> warning, preferably at compile time!
>
> .Dave
>
>>>
>>> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
>>> ---
>>> drivers/gpu/drm/i915/intel_lrc.c | 2 +-
>>> drivers/gpu/drm/i915/intel_ringbuffer.c | 2 +-
>>> 2 files changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
>>> index 7670a0f..0bb50f6 100644
>>> --- a/drivers/gpu/drm/i915/intel_lrc.c
>>> +++ b/drivers/gpu/drm/i915/intel_lrc.c
>>> @@ -1096,7 +1096,7 @@ static int intel_logical_ring_workarounds_emit(struct intel_engine_cs *ring,
>>> struct drm_i915_private *dev_priv = dev->dev_private;
>>> struct i915_workarounds *w = &dev_priv->workarounds;
>>>
>>> - if (WARN_ON_ONCE(w->count == 0))
>>> + if (w->count == 0)
>>> return 0;
>>>
>>> ring->gpu_caches_dirty = true;
>>> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
>>> index 12a36f0..3d99bb1 100644
>>> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
>>> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
>>> @@ -682,7 +682,7 @@ static int intel_ring_workarounds_emit(struct intel_engine_cs *ring,
>>> struct drm_i915_private *dev_priv = dev->dev_private;
>>> struct i915_workarounds *w = &dev_priv->workarounds;
>>>
>>> - if (WARN_ON_ONCE(w->count == 0))
>>> + if (w->count == 0)
>>> return 0;
>>>
>>> ring->gpu_caches_dirty = true;
>>> --
>>> 1.9.3
>>>
>>> _______________________________________________
>>> Intel-gfx mailing list
>>> Intel-gfx@lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>>
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Rodrigo Vivi
Blog: http://blog.vivi.eng.br
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] drm/i915: Don't complain when there is no workaround.
2014-12-18 18:47 ` Rodrigo Vivi
@ 2014-12-18 19:17 ` Ville Syrjälä
0 siblings, 0 replies; 6+ messages in thread
From: Ville Syrjälä @ 2014-12-18 19:17 UTC (permalink / raw)
To: Rodrigo Vivi; +Cc: intel-gfx
On Thu, Dec 18, 2014 at 10:47:11AM -0800, Rodrigo Vivi wrote:
> Yeah, but Skylake is running and we didn't need any W/A here yet. The
> warning is just disturbing dmesg with 3 ops and not forcing uns to
> hunt for missing workarouinds.
>
> We add W/A based on specific needs, not based on counts.
I can immediately see two w/as in gen9_init_clock_gating() that need to be
moved over to the new way of doing things.
>
> On Thu, Dec 18, 2014 at 8:26 AM, Dave Gordon <david.s.gordon@intel.com> wrote:
> > On 18/12/14 08:16, Daniel Vetter wrote:
> >> On Wed, Dec 17, 2014 at 08:34:41AM -0800, Rodrigo Vivi wrote:
> >>> When we don't have any workaround to emit we should celebrate, not bother.
> >>
> >> Well except that on the platforms where this fires we really should have
> >> some, most likely. This is in a way similar to all the other WARN_ON cases
> >> we have to make sure nothing gets lost in platform enabling.
> >> -Daniel
> >
> > You could have a convention that
> > (count == 0)
> > means "I haven't filled this in yet" (and generates a warning), whereas
> > (count == I915_NO_WORKAROUNDS_REQUIRED)
> > (which can be defined as (~0)) means "I haven't forgotten, there really
> > aren't any workarounds" and suppresses the warning.
> >
> > Of course, any /other/ value > I915_MAX_WA_REGS should definitely give a
> > warning, preferably at compile time!
> >
> > .Dave
> >
> >>>
> >>> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> >>> ---
> >>> drivers/gpu/drm/i915/intel_lrc.c | 2 +-
> >>> drivers/gpu/drm/i915/intel_ringbuffer.c | 2 +-
> >>> 2 files changed, 2 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> >>> index 7670a0f..0bb50f6 100644
> >>> --- a/drivers/gpu/drm/i915/intel_lrc.c
> >>> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> >>> @@ -1096,7 +1096,7 @@ static int intel_logical_ring_workarounds_emit(struct intel_engine_cs *ring,
> >>> struct drm_i915_private *dev_priv = dev->dev_private;
> >>> struct i915_workarounds *w = &dev_priv->workarounds;
> >>>
> >>> - if (WARN_ON_ONCE(w->count == 0))
> >>> + if (w->count == 0)
> >>> return 0;
> >>>
> >>> ring->gpu_caches_dirty = true;
> >>> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> >>> index 12a36f0..3d99bb1 100644
> >>> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> >>> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> >>> @@ -682,7 +682,7 @@ static int intel_ring_workarounds_emit(struct intel_engine_cs *ring,
> >>> struct drm_i915_private *dev_priv = dev->dev_private;
> >>> struct i915_workarounds *w = &dev_priv->workarounds;
> >>>
> >>> - if (WARN_ON_ONCE(w->count == 0))
> >>> + if (w->count == 0)
> >>> return 0;
> >>>
> >>> ring->gpu_caches_dirty = true;
> >>> --
> >>> 1.9.3
> >>>
> >>> _______________________________________________
> >>> Intel-gfx mailing list
> >>> Intel-gfx@lists.freedesktop.org
> >>> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> >>
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
>
>
> --
> Rodrigo Vivi
> Blog: http://blog.vivi.eng.br
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2014-12-18 19:17 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-17 16:34 [PATCH] drm/i915: Don't complain when there is no workaround Rodrigo Vivi
2014-12-18 7:19 ` shuang.he
2014-12-18 8:16 ` Daniel Vetter
2014-12-18 16:26 ` Dave Gordon
2014-12-18 18:47 ` Rodrigo Vivi
2014-12-18 19:17 ` Ville Syrjälä
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox