* [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset
@ 2019-10-05 10:55 Chris Wilson
2019-10-05 10:55 ` [PATCH i-g-t 2/3] i915/gem_eio: Show engine status before resets Chris Wilson
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Chris Wilson @ 2019-10-05 10:55 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The forced-reset itself should be immediate; it's just the wait after
the health check where we appear to have issues!
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
---
tests/i915/gem_eio.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/tests/i915/gem_eio.c b/tests/i915/gem_eio.c
index 007b9fb70..7c8ff10df 100644
--- a/tests/i915/gem_eio.c
+++ b/tests/i915/gem_eio.c
@@ -76,12 +76,15 @@ static void trigger_reset(int fd)
igt_kmsg(KMSG_DEBUG "Forcing GPU reset\n");
igt_force_gpu_reset(fd);
+ /* The forced reset should be immediate */
+ igt_assert_lte(igt_seconds_elapsed(&ts), 2);
+
/* And just check the gpu is indeed running again */
igt_kmsg(KMSG_DEBUG "Checking that the GPU recovered\n");
gem_test_engine(fd, ALL_ENGINES);
igt_drop_caches_set(fd, DROP_ACTIVE);
- /* We expect forced reset and health check to be quick. */
+ /* We expect health check to be quick. */
igt_assert_lte(igt_seconds_elapsed(&ts), 10);
}
--
2.23.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH i-g-t 2/3] i915/gem_eio: Show engine status before resets
2019-10-05 10:55 [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset Chris Wilson
@ 2019-10-05 10:55 ` Chris Wilson
2019-10-05 13:44 ` Andi Shyti
2019-10-05 10:55 ` [PATCH i-g-t 3/3] i915/gem_softpin: Replace constant loop with timeout Chris Wilson
2019-10-07 16:57 ` [igt-dev] [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset Tvrtko Ursulin
2 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2019-10-05 10:55 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
Dump the i915_engine_info into debug prior to triggering a reset/wedge.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
tests/i915/gem_eio.c | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/tests/i915/gem_eio.c b/tests/i915/gem_eio.c
index 7c8ff10df..444471cb9 100644
--- a/tests/i915/gem_eio.c
+++ b/tests/i915/gem_eio.c
@@ -82,6 +82,8 @@ static void trigger_reset(int fd)
/* And just check the gpu is indeed running again */
igt_kmsg(KMSG_DEBUG "Checking that the GPU recovered\n");
gem_test_engine(fd, ALL_ENGINES);
+
+ igt_debugfs_dump(fd, "i915_engine_info");
igt_drop_caches_set(fd, DROP_ACTIVE);
/* We expect health check to be quick. */
@@ -392,6 +394,7 @@ static void test_wait(int fd, unsigned int flags, unsigned int wait)
hang = spin_sync(fd, 0, I915_EXEC_DEFAULT);
+ igt_debugfs_dump(fd, "i915_engine_info");
check_wait(fd, hang->handle, wait, NULL);
igt_spin_free(fd, hang);
@@ -467,14 +470,15 @@ static void test_inflight(int fd, unsigned int wait)
igt_assert(fence[n] != -1);
}
+ igt_debugfs_dump(fd, "i915_engine_info");
check_wait(fd, obj[1].handle, wait, NULL);
for (unsigned int n = 0; n < max; n++) {
igt_assert_eq(sync_fence_status(fence[n]), -EIO);
close(fence[n]);
}
-
igt_spin_free(fd, hang);
+
igt_assert(i915_reset_control(true));
trigger_reset(fd);
@@ -523,14 +527,15 @@ static void test_inflight_suspend(int fd)
igt_set_autoresume_delay(30);
igt_system_suspend_autoresume(SUSPEND_STATE_MEM, SUSPEND_TEST_NONE);
+ igt_debugfs_dump(fd, "i915_engine_info");
check_wait(fd, obj[1].handle, 10, NULL);
for (unsigned int n = 0; n < max; n++) {
igt_assert_eq(sync_fence_status(fence[n]), -EIO);
close(fence[n]);
}
-
igt_spin_free(fd, hang);
+
igt_assert(i915_reset_control(true));
trigger_reset(fd);
close(fd);
@@ -605,15 +610,16 @@ static void test_inflight_contexts(int fd, unsigned int wait)
count++;
}
+ igt_debugfs_dump(fd, "i915_engine_info");
check_wait(fd, obj[1].handle, wait, NULL);
for (unsigned int n = 0; n < count; n++) {
igt_assert_eq(sync_fence_status(fence[n]), -EIO);
close(fence[n]);
}
-
igt_spin_free(fd, hang);
gem_close(fd, obj[1].handle);
+
igt_assert(i915_reset_control(true));
trigger_reset(fd);
@@ -714,14 +720,15 @@ static void test_inflight_internal(int fd, unsigned int wait)
nfence++;
}
+ igt_debugfs_dump(fd, "i915_engine_info");
check_wait(fd, obj[1].handle, wait, NULL);
while (nfence--) {
igt_assert_eq(sync_fence_status(fences[nfence]), -EIO);
close(fences[nfence]);
}
-
igt_spin_free(fd, hang);
+
igt_assert(i915_reset_control(true));
trigger_reset(fd);
close(fd);
--
2.23.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH i-g-t 3/3] i915/gem_softpin: Replace constant loop with timeout
2019-10-05 10:55 [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset Chris Wilson
2019-10-05 10:55 ` [PATCH i-g-t 2/3] i915/gem_eio: Show engine status before resets Chris Wilson
@ 2019-10-05 10:55 ` Chris Wilson
2019-10-05 13:46 ` Andi Shyti
2019-10-07 16:57 ` [igt-dev] [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset Tvrtko Ursulin
2 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2019-10-05 10:55 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
Rather than do a fixed amount of work that takes *forever*, run for a
fixed amount of time.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
tests/i915/gem_softpin.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/tests/i915/gem_softpin.c b/tests/i915/gem_softpin.c
index c29097ad3..032056c08 100644
--- a/tests/i915/gem_softpin.c
+++ b/tests/i915/gem_softpin.c
@@ -102,14 +102,14 @@ static void test_softpin(int fd)
struct drm_i915_gem_exec_object2 object;
uint64_t offset, end;
uint32_t last_handle;
- int loop;
+ unsigned long count = 0;
last_handle = gem_create(fd, size);
memset(&execbuf, 0, sizeof(execbuf));
execbuf.buffers_ptr = to_user_pointer(&object);
execbuf.buffer_count = 1;
- for (loop = 0; loop < 1024; loop++) {
+ igt_until_timeout(30) {
memset(&object, 0, sizeof(object));
object.handle = gem_create(fd, 2*size);
gem_write(fd, object.handle, 0, &bbe, sizeof(bbe));
@@ -134,7 +134,9 @@ static void test_softpin(int fd)
}
last_handle = object.handle;
+ count++;
}
+ igt_info("Completd %lu cycles\n", count);
}
static void test_overlap(int fd)
--
2.23.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t 2/3] i915/gem_eio: Show engine status before resets
2019-10-05 10:55 ` [PATCH i-g-t 2/3] i915/gem_eio: Show engine status before resets Chris Wilson
@ 2019-10-05 13:44 ` Andi Shyti
0 siblings, 0 replies; 6+ messages in thread
From: Andi Shyti @ 2019-10-05 13:44 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev, intel-gfx
Hi Chris,
On Sat, Oct 05, 2019 at 11:55:55AM +0100, Chris Wilson wrote:
> Dump the i915_engine_info into debug prior to triggering a reset/wedge.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
looks OK, Reviewed-by: Andi Shyti <andi.shyti@intel.com>
Andi
P.S.
> }
> -
> igt_spin_free(fd, hang);
> +
grrrrrr....
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH i-g-t 3/3] i915/gem_softpin: Replace constant loop with timeout
2019-10-05 10:55 ` [PATCH i-g-t 3/3] i915/gem_softpin: Replace constant loop with timeout Chris Wilson
@ 2019-10-05 13:46 ` Andi Shyti
0 siblings, 0 replies; 6+ messages in thread
From: Andi Shyti @ 2019-10-05 13:46 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev, intel-gfx
Hi Chris,
On Sat, Oct 05, 2019 at 11:55:56AM +0100, Chris Wilson wrote:
> Rather than do a fixed amount of work that takes *forever*, run for a
> fixed amount of time.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
looks nice! :)
Reviewed-by: Andi Shyti <andi.shyti@intel.com>
Andi
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset
2019-10-05 10:55 [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset Chris Wilson
2019-10-05 10:55 ` [PATCH i-g-t 2/3] i915/gem_eio: Show engine status before resets Chris Wilson
2019-10-05 10:55 ` [PATCH i-g-t 3/3] i915/gem_softpin: Replace constant loop with timeout Chris Wilson
@ 2019-10-07 16:57 ` Tvrtko Ursulin
2 siblings, 0 replies; 6+ messages in thread
From: Tvrtko Ursulin @ 2019-10-07 16:57 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
On 05/10/2019 11:55, Chris Wilson wrote:
> The forced-reset itself should be immediate; it's just the wait after
> the health check where we appear to have issues!
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> ---
> tests/i915/gem_eio.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/tests/i915/gem_eio.c b/tests/i915/gem_eio.c
> index 007b9fb70..7c8ff10df 100644
> --- a/tests/i915/gem_eio.c
> +++ b/tests/i915/gem_eio.c
> @@ -76,12 +76,15 @@ static void trigger_reset(int fd)
> igt_kmsg(KMSG_DEBUG "Forcing GPU reset\n");
> igt_force_gpu_reset(fd);
>
> + /* The forced reset should be immediate */
> + igt_assert_lte(igt_seconds_elapsed(&ts), 2);
> +
> /* And just check the gpu is indeed running again */
> igt_kmsg(KMSG_DEBUG "Checking that the GPU recovered\n");
> gem_test_engine(fd, ALL_ENGINES);
> igt_drop_caches_set(fd, DROP_ACTIVE);
>
> - /* We expect forced reset and health check to be quick. */
> + /* We expect health check to be quick. */
> igt_assert_lte(igt_seconds_elapsed(&ts), 10);
> }
>
>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Regards,
Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-10-07 16:57 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-10-05 10:55 [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset Chris Wilson
2019-10-05 10:55 ` [PATCH i-g-t 2/3] i915/gem_eio: Show engine status before resets Chris Wilson
2019-10-05 13:44 ` Andi Shyti
2019-10-05 10:55 ` [PATCH i-g-t 3/3] i915/gem_softpin: Replace constant loop with timeout Chris Wilson
2019-10-05 13:46 ` Andi Shyti
2019-10-07 16:57 ` [igt-dev] [PATCH i-g-t 1/3] i915/gem_eio: Retighten timeouts for forced reset Tvrtko Ursulin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).