* [PATCH] drm/i915: Flush ggtt writes through the old fenced vma before changing fences
@ 2018-01-30 16:44 Chris Wilson
2018-01-30 19:46 ` ✓ Fi.CI.BAT: success for " Patchwork
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Chris Wilson @ 2018-01-30 16:44 UTC (permalink / raw)
To: intel-gfx
This is a precautionary measure as I have no evidence to suggest we've
hit a bug here (I was hoping this might explain gdg's odd behaviour, but
alas), but given that we have a function to flush the ggtt writes it
seems prudent to use it prior to changing the fence register. Due to the
intrinsic nature of the GTT often operating as an independent mmio path,
we should not just rely on the write to the fence acting as a full flush
for GTT writes.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
---
drivers/gpu/drm/i915/i915_gem_fence_reg.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_gem_fence_reg.c b/drivers/gpu/drm/i915/i915_gem_fence_reg.c
index 012250f25255..b8338d75c6f3 100644
--- a/drivers/gpu/drm/i915/i915_gem_fence_reg.c
+++ b/drivers/gpu/drm/i915/i915_gem_fence_reg.c
@@ -230,10 +230,14 @@ static int fence_update(struct drm_i915_fence_reg *fence,
}
if (fence->vma) {
- ret = i915_gem_active_retire(&fence->vma->last_fence,
- &fence->vma->obj->base.dev->struct_mutex);
+ struct i915_vma *old = fence->vma;
+
+ ret = i915_gem_active_retire(&old->last_fence,
+ &old->obj->base.dev->struct_mutex);
if (ret)
return ret;
+
+ i915_vma_flush_writes(old);
}
if (fence->vma && fence->vma != vma) {
--
2.15.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 4+ messages in thread
* ✓ Fi.CI.BAT: success for drm/i915: Flush ggtt writes through the old fenced vma before changing fences
2018-01-30 16:44 [PATCH] drm/i915: Flush ggtt writes through the old fenced vma before changing fences Chris Wilson
@ 2018-01-30 19:46 ` Patchwork
2018-01-31 2:25 ` ✗ Fi.CI.IGT: warning " Patchwork
2018-01-31 10:46 ` [PATCH] " Lahtinen, Joonas
2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2018-01-30 19:46 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Flush ggtt writes through the old fenced vma before changing fences
URL : https://patchwork.freedesktop.org/series/37355/
State : success
== Summary ==
Series 37355v1 drm/i915: Flush ggtt writes through the old fenced vma before changing fences
https://patchwork.freedesktop.org/api/1.0/series/37355/revisions/1/mbox/
Test gem_mmap_gtt:
Subgroup basic-small-bo-tiledx:
fail -> PASS (fi-gdg-551) fdo#102575
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-b:
pass -> INCOMPLETE (fi-snb-2520m) fdo#103713
fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fi-bdw-5557u total:288 pass:267 dwarn:0 dfail:0 fail:0 skip:21 time:422s
fi-bdw-gvtdvm total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:427s
fi-blb-e6850 total:288 pass:223 dwarn:1 dfail:0 fail:0 skip:64 time:373s
fi-bsw-n3050 total:288 pass:242 dwarn:0 dfail:0 fail:0 skip:46 time:486s
fi-bwr-2160 total:288 pass:183 dwarn:0 dfail:0 fail:0 skip:105 time:281s
fi-bxt-dsi total:288 pass:258 dwarn:0 dfail:0 fail:0 skip:30 time:482s
fi-bxt-j4205 total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:482s
fi-byt-j1900 total:288 pass:253 dwarn:0 dfail:0 fail:0 skip:35 time:466s
fi-byt-n2820 total:288 pass:249 dwarn:0 dfail:0 fail:0 skip:39 time:457s
fi-cfl-s2 total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:569s
fi-elk-e7500 total:224 pass:168 dwarn:10 dfail:0 fail:0 skip:45
fi-gdg-551 total:288 pass:180 dwarn:0 dfail:0 fail:0 skip:108 time:277s
fi-glk-1 total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:514s
fi-hsw-4770 total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:390s
fi-hsw-4770r total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:407s
fi-ilk-650 total:288 pass:228 dwarn:0 dfail:0 fail:0 skip:60 time:414s
fi-ivb-3520m total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:459s
fi-ivb-3770 total:288 pass:255 dwarn:0 dfail:0 fail:0 skip:33 time:412s
fi-kbl-7500u total:288 pass:263 dwarn:1 dfail:0 fail:0 skip:24 time:462s
fi-kbl-7560u total:288 pass:269 dwarn:0 dfail:0 fail:0 skip:19 time:500s
fi-kbl-7567u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:455s
fi-kbl-r total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:502s
fi-skl-6260u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:427s
fi-skl-6600u total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:511s
fi-skl-6700hq total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:527s
fi-skl-6700k2 total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:487s
fi-skl-6770hq total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:484s
fi-skl-guc total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:413s
fi-skl-gvtdvm total:288 pass:265 dwarn:0 dfail:0 fail:0 skip:23 time:430s
fi-snb-2520m total:245 pass:211 dwarn:0 dfail:0 fail:0 skip:33
fi-snb-2600 total:288 pass:248 dwarn:0 dfail:0 fail:0 skip:40 time:396s
Blacklisted hosts:
fi-glk-dsi total:288 pass:258 dwarn:0 dfail:0 fail:0 skip:30 time:476s
0edf4cc4e7c163fa61312f1708fc92284b855f8e drm-tip: 2018y-01m-30d-18h-33m-48s UTC integration manifest
ca3a3d8881e9 drm/i915: Flush ggtt writes through the old fenced vma before changing fences
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7829/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
* ✗ Fi.CI.IGT: warning for drm/i915: Flush ggtt writes through the old fenced vma before changing fences
2018-01-30 16:44 [PATCH] drm/i915: Flush ggtt writes through the old fenced vma before changing fences Chris Wilson
2018-01-30 19:46 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-01-31 2:25 ` Patchwork
2018-01-31 10:46 ` [PATCH] " Lahtinen, Joonas
2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2018-01-31 2:25 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Flush ggtt writes through the old fenced vma before changing fences
URL : https://patchwork.freedesktop.org/series/37355/
State : warning
== Summary ==
Test kms_cursor_legacy:
Subgroup 2x-long-flip-vs-cursor-legacy:
fail -> PASS (shard-hsw)
Test perf_pmu:
Subgroup frequency:
fail -> PASS (shard-apl) fdo#104829
Test kms_atomic_transition:
Subgroup 1x-modeset-transitions-nonblocking:
pass -> SKIP (shard-snb)
Test kms_plane:
Subgroup plane-position-hole-pipe-a-planes:
pass -> SKIP (shard-snb)
Test kms_flip:
Subgroup wf_vblank-ts-check-interruptible:
fail -> PASS (shard-snb) fdo#100368
fdo#104829 https://bugs.freedesktop.org/show_bug.cgi?id=104829
fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
shard-apl total:2838 pass:1752 dwarn:1 dfail:0 fail:21 skip:1064 time:12701s
shard-hsw total:2838 pass:1736 dwarn:1 dfail:0 fail:10 skip:1090 time:12119s
shard-snb total:2838 pass:1328 dwarn:1 dfail:0 fail:10 skip:1499 time:6655s
Blacklisted hosts:
shard-kbl total:2824 pass:1859 dwarn:5 dfail:0 fail:23 skip:936 time:9591s
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7829/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/i915: Flush ggtt writes through the old fenced vma before changing fences
2018-01-30 16:44 [PATCH] drm/i915: Flush ggtt writes through the old fenced vma before changing fences Chris Wilson
2018-01-30 19:46 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-01-31 2:25 ` ✗ Fi.CI.IGT: warning " Patchwork
@ 2018-01-31 10:46 ` Lahtinen, Joonas
2 siblings, 0 replies; 4+ messages in thread
From: Lahtinen, Joonas @ 2018-01-31 10:46 UTC (permalink / raw)
To: intel-gfx@lists.freedesktop.org, chris@chris-wilson.co.uk
On Tue, 2018-01-30 at 16:44 +0000, Chris Wilson wrote:
> This is a precautionary measure as I have no evidence to suggest we've
> hit a bug here (I was hoping this might explain gdg's odd behaviour, but
> alas), but given that we have a function to flush the ggtt writes it
> seems prudent to use it prior to changing the fence register. Due to the
> intrinsic nature of the GTT often operating as an independent mmio path,
> we should not just rely on the write to the fence acting as a full flush
> for GTT writes.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Regards, Joonas
---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki
Business Identity Code: 0357606 - 4
Domiciled in Helsinki
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-01-31 10:46 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-30 16:44 [PATCH] drm/i915: Flush ggtt writes through the old fenced vma before changing fences Chris Wilson
2018-01-30 19:46 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-01-31 2:25 ` ✗ Fi.CI.IGT: warning " Patchwork
2018-01-31 10:46 ` [PATCH] " Lahtinen, Joonas
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.