All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jason Ekstrand <jason@jlekstrand.net>
To: igt-dev@lists.freedesktop.org
Subject: [igt-dev] [PATCH i-g-t 05/74] tests/i915: Drop gem_ctx_clone
Date: Thu, 15 Apr 2021 14:10:36 -0500	[thread overview]
Message-ID: <20210415191145.2137858-6-jason@jlekstrand.net> (raw)
In-Reply-To: <20210415191145.2137858-1-jason@jlekstrand.net>

We're going to be deleting the CONTEXT_CLONE API since IGT is the only
userspace to ever use it.

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
---
 tests/i915/gem_ctx_clone.c | 450 -------------------------------------
 tests/meson.build          |   1 -
 2 files changed, 451 deletions(-)
 delete mode 100644 tests/i915/gem_ctx_clone.c

diff --git a/tests/i915/gem_ctx_clone.c b/tests/i915/gem_ctx_clone.c
deleted file mode 100644
index b72269bc..00000000
--- a/tests/i915/gem_ctx_clone.c
+++ /dev/null
@@ -1,450 +0,0 @@
-/*
- * Copyright © 2019 Intel Corporation
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the next
- * paragraph) shall be included in all copies or substantial portions of the
- * Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
- * IN THE SOFTWARE.
- */
-
-#include "i915/gem.h"
-#include "i915/gem_vm.h"
-#include "i915_drm.h"
-#include "igt.h"
-#include "igt_gt.h"
-
-static int ctx_create_ioctl(int i915, struct drm_i915_gem_context_create_ext *arg)
-{
-	int err;
-
-	err = 0;
-	if (igt_ioctl(i915, DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT, arg)) {
-		err = -errno;
-		igt_assume(err);
-	}
-
-	errno = 0;
-	return err;
-}
-
-static void invalid_clone(int i915)
-{
-	struct drm_i915_gem_context_create_ext_clone ext = {
-		{ .name = I915_CONTEXT_CREATE_EXT_CLONE },
-	};
-	struct drm_i915_gem_context_create_ext create = {
-		.flags = I915_CONTEXT_CREATE_FLAGS_USE_EXTENSIONS,
-		.extensions = to_user_pointer(&ext),
-	};
-
-	igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-	gem_context_destroy(i915, create.ctx_id);
-
-	ext.flags = -1; /* Hopefully we won't run out of flags */
-	igt_assert_eq(ctx_create_ioctl(i915, &create), -EINVAL);
-	ext.flags = 0;
-
-	ext.base.next_extension = -1;
-	igt_assert_eq(ctx_create_ioctl(i915, &create), -EFAULT);
-	ext.base.next_extension = to_user_pointer(&ext);
-	igt_assert_eq(ctx_create_ioctl(i915, &create), -E2BIG);
-	ext.base.next_extension = 0;
-
-	ext.clone_id = -1;
-	igt_assert_eq(ctx_create_ioctl(i915, &create), -ENOENT);
-	ext.clone_id = 0;
-}
-
-static void clone_flags(int i915)
-{
-	struct drm_i915_gem_context_create_ext_setparam set = {
-		{ .name = I915_CONTEXT_CREATE_EXT_SETPARAM },
-		{ .param = I915_CONTEXT_PARAM_RECOVERABLE },
-	};
-	struct drm_i915_gem_context_create_ext_clone ext = {
-		{ .name = I915_CONTEXT_CREATE_EXT_CLONE },
-		.flags = I915_CONTEXT_CLONE_FLAGS,
-	};
-	struct drm_i915_gem_context_create_ext create = {
-		.flags = I915_CONTEXT_CREATE_FLAGS_USE_EXTENSIONS,
-		.extensions = to_user_pointer(&ext),
-	};
-	int expected;
-
-	set.param.value = 1; /* default is recoverable */
-	igt_require(__gem_context_set_param(i915, &set.param) == 0);
-
-	for (int pass = 0; pass < 2; pass++) { /* cloning default, then child */
-		igt_debug("Cloning %d\n", ext.clone_id);
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-
-		set.param.ctx_id = ext.clone_id;
-		gem_context_get_param(i915, &set.param);
-		expected = set.param.value;
-
-		set.param.ctx_id = create.ctx_id;
-		gem_context_get_param(i915, &set.param);
-
-		igt_assert_eq_u64(set.param.param,
-				  I915_CONTEXT_PARAM_RECOVERABLE);
-		igt_assert_eq((int)set.param.value, expected);
-
-		gem_context_destroy(i915, create.ctx_id);
-
-		expected = set.param.value = 0;
-		set.param.ctx_id = ext.clone_id;
-		gem_context_set_param(i915, &set.param);
-
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-
-		set.param.ctx_id = create.ctx_id;
-		gem_context_get_param(i915, &set.param);
-
-		igt_assert_eq_u64(set.param.param,
-				  I915_CONTEXT_PARAM_RECOVERABLE);
-		igt_assert_eq((int)set.param.value, expected);
-
-		gem_context_destroy(i915, create.ctx_id);
-
-		/* clone but then reset priority to default... */
-		set.param.ctx_id = 0;
-		set.param.value = 1;
-		ext.base.next_extension = to_user_pointer(&set);
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-		ext.base.next_extension = 0;
-
-		/* then new context should have updated priority... */
-		set.param.ctx_id = create.ctx_id;
-		gem_context_get_param(i915, &set.param);
-		igt_assert_eq_u64(set.param.value, 1);
-
-		/* but original context should have default priority */
-		set.param.ctx_id = ext.clone_id;
-		gem_context_get_param(i915, &set.param);
-		igt_assert_eq_u64(set.param.value, 0);
-
-		gem_context_destroy(i915, create.ctx_id);
-		ext.clone_id = gem_context_create(i915);
-	}
-
-	gem_context_destroy(i915, ext.clone_id);
-}
-
-static void clone_engines(int i915)
-{
-	struct drm_i915_gem_context_create_ext_setparam set = {
-		{ .name = I915_CONTEXT_CREATE_EXT_SETPARAM },
-		{ .param = I915_CONTEXT_PARAM_ENGINES },
-	};
-	struct drm_i915_gem_context_create_ext_clone ext = {
-		{ .name = I915_CONTEXT_CREATE_EXT_CLONE },
-		.flags = I915_CONTEXT_CLONE_ENGINES,
-	};
-	struct drm_i915_gem_context_create_ext create = {
-		.flags = I915_CONTEXT_CREATE_FLAGS_USE_EXTENSIONS,
-		.extensions = to_user_pointer(&ext),
-	};
-	I915_DEFINE_CONTEXT_PARAM_ENGINES(expected, 64);
-	I915_DEFINE_CONTEXT_PARAM_ENGINES(engines, 64);
-	uint64_t ex_size;
-
-	memset(&expected, 0, sizeof(expected));
-	memset(&engines, 0, sizeof(engines));
-
-	igt_require(__gem_context_set_param(i915, &set.param) == 0);
-
-	for (int pass = 0; pass < 2; pass++) { /* cloning default, then child */
-		igt_debug("Cloning %d\n", ext.clone_id);
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-
-		/* Check that we cloned the engine map */
-		set.param.ctx_id = ext.clone_id;
-		set.param.size = sizeof(expected);
-		set.param.value = to_user_pointer(&expected);
-		gem_context_get_param(i915, &set.param);
-		ex_size = set.param.size;
-
-		set.param.ctx_id = create.ctx_id;
-		set.param.size = sizeof(engines);
-		set.param.value = to_user_pointer(&engines);
-		gem_context_get_param(i915, &set.param);
-
-		igt_assert_eq_u64(set.param.param, I915_CONTEXT_PARAM_ENGINES);
-		igt_assert_eq_u64(set.param.size, ex_size);
-		igt_assert(!memcmp(&engines, &expected, ex_size));
-
-		gem_context_destroy(i915, create.ctx_id);
-
-		/* Check that the clone will replace an earlier set */
-		expected.engines[0].engine_class =
-			I915_ENGINE_CLASS_INVALID;
-		expected.engines[0].engine_instance =
-			I915_ENGINE_CLASS_INVALID_NONE;
-		ex_size = (sizeof(struct i915_context_param_engines) +
-			   sizeof(expected.engines[0]));
-
-		set.param.ctx_id = ext.clone_id;
-		set.param.size = ex_size;
-		set.param.value = to_user_pointer(&expected);
-		gem_context_set_param(i915, &set.param);
-
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-
-		set.param.ctx_id = create.ctx_id;
-		set.param.size = sizeof(engines);
-		set.param.value = to_user_pointer(&engines);
-		gem_context_get_param(i915, &set.param);
-
-		igt_assert_eq_u64(set.param.size, ex_size);
-		igt_assert(!memcmp(&engines, &expected, ex_size));
-
-		gem_context_destroy(i915, create.ctx_id);
-
-		/* clone but then reset engines to default */
-		set.param.ctx_id = 0;
-		set.param.size = 0;
-		set.param.value = 0;
-		ext.base.next_extension = to_user_pointer(&set);
-
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-		ext.base.next_extension = 0;
-
-		set.param.ctx_id = create.ctx_id;
-		set.param.size = sizeof(engines);
-		set.param.value = to_user_pointer(&engines);
-		gem_context_get_param(i915, &set.param);
-		igt_assert_eq_u64(set.param.size, 0);
-
-		gem_context_destroy(i915, create.ctx_id);
-
-		/* And check we ignore the flag */
-		ext.flags = 0;
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-		ext.flags = I915_CONTEXT_CLONE_ENGINES;
-
-		set.param.ctx_id = create.ctx_id;
-		set.param.size = sizeof(engines);
-		set.param.value = to_user_pointer(&engines);
-		gem_context_get_param(i915, &set.param);
-		igt_assert_eq_u64(set.param.size, 0);
-
-		ext.clone_id = gem_context_create(i915);
-	}
-
-	gem_context_destroy(i915, ext.clone_id);
-}
-
-static void clone_scheduler(int i915)
-{
-	struct drm_i915_gem_context_create_ext_setparam set = {
-		{ .name = I915_CONTEXT_CREATE_EXT_SETPARAM },
-		{ .param = I915_CONTEXT_PARAM_PRIORITY },
-	};
-	struct drm_i915_gem_context_create_ext_clone ext = {
-		{ .name = I915_CONTEXT_CREATE_EXT_CLONE },
-		.flags = I915_CONTEXT_CLONE_SCHEDATTR,
-	};
-	struct drm_i915_gem_context_create_ext create = {
-		.flags = I915_CONTEXT_CREATE_FLAGS_USE_EXTENSIONS,
-		.extensions = to_user_pointer(&ext),
-	};
-	int expected;
-
-	igt_require(__gem_context_set_param(i915, &set.param) == 0);
-
-	for (int pass = 0; pass < 2; pass++) { /* cloning default, then child */
-		igt_debug("Cloning %d\n", ext.clone_id);
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-
-		set.param.ctx_id = ext.clone_id;
-		gem_context_get_param(i915, &set.param);
-		expected = set.param.value;
-
-		set.param.ctx_id = create.ctx_id;
-		gem_context_get_param(i915, &set.param);
-
-		igt_assert_eq_u64(set.param.param, I915_CONTEXT_PARAM_PRIORITY);
-		igt_assert_eq((int)set.param.value, expected);
-
-		gem_context_destroy(i915, create.ctx_id);
-
-		expected = set.param.value = 1;
-		set.param.ctx_id = ext.clone_id;
-		gem_context_set_param(i915, &set.param);
-
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-
-		set.param.ctx_id = create.ctx_id;
-		gem_context_get_param(i915, &set.param);
-
-		igt_assert_eq_u64(set.param.param, I915_CONTEXT_PARAM_PRIORITY);
-		igt_assert_eq((int)set.param.value, expected);
-
-		gem_context_destroy(i915, create.ctx_id);
-
-		/* clone but then reset priority to default */
-		set.param.ctx_id = 0;
-		set.param.value = 0;
-		ext.base.next_extension = to_user_pointer(&set);
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-		ext.base.next_extension = 0;
-
-		set.param.ctx_id = create.ctx_id;
-		gem_context_get_param(i915, &set.param);
-		igt_assert_eq_u64(set.param.value, 0);
-
-		set.param.ctx_id = ext.clone_id;
-		gem_context_get_param(i915, &set.param);
-		igt_assert_eq_u64(set.param.value, 1);
-
-		gem_context_destroy(i915, create.ctx_id);
-		ext.clone_id = gem_context_create(i915);
-	}
-
-	gem_context_destroy(i915, ext.clone_id);
-}
-
-static uint32_t __batch_create(int i915, uint32_t offset)
-{
-	const uint32_t bbe = MI_BATCH_BUFFER_END;
-	uint32_t handle;
-
-	handle = gem_create(i915, ALIGN(offset + 4, 4096));
-	gem_write(i915, handle, offset, &bbe, sizeof(bbe));
-
-	return handle;
-}
-
-static uint32_t batch_create(int i915)
-{
-	return __batch_create(i915, 0);
-}
-
-static void check_same_vm(int i915, uint32_t ctx_a, uint32_t ctx_b)
-{
-	struct drm_i915_gem_exec_object2 batch = {
-		.handle = batch_create(i915),
-	};
-	struct drm_i915_gem_execbuffer2 eb = {
-		.buffers_ptr = to_user_pointer(&batch),
-		.buffer_count = 1,
-	};
-
-	/* First verify that we try to use "softpinning" by default */
-	batch.offset = 48 << 20;
-	eb.rsvd1 = ctx_a;
-	gem_execbuf(i915, &eb);
-	igt_assert_eq_u64(batch.offset, 48 << 20);
-
-	/* An already active VMA will try to keep its offset */
-	batch.offset = 0;
-	eb.rsvd1 = ctx_b;
-	gem_execbuf(i915, &eb);
-	igt_assert_eq_u64(batch.offset, 48 << 20);
-
-	gem_sync(i915, batch.handle);
-	gem_close(i915, batch.handle);
-
-	gem_quiescent_gpu(i915); /* evict the vma */
-}
-
-static void clone_vm(int i915)
-{
-	struct drm_i915_gem_context_param set = {
-		.param = I915_CONTEXT_PARAM_VM,
-	};
-	struct drm_i915_gem_context_create_ext_clone ext = {
-		{ .name = I915_CONTEXT_CREATE_EXT_CLONE },
-		.flags = I915_CONTEXT_CLONE_VM,
-	};
-	struct drm_i915_gem_context_create_ext create = {
-		.flags = I915_CONTEXT_CREATE_FLAGS_USE_EXTENSIONS,
-		.extensions = to_user_pointer(&ext),
-	};
-	uint32_t vm_id[2];
-
-	igt_require(__gem_context_set_param(i915, &set) == -ENOENT);
-
-	/* Scrub the VM for our tests */
-	i915 = gem_reopen_driver(i915);
-
-	set.ctx_id = gem_context_create(i915);
-	gem_context_get_param(i915, &set);
-	vm_id[0] = set.value;
-	gem_context_destroy(i915, set.ctx_id);
-
-	vm_id[1] = gem_vm_create(i915);
-
-	for (int pass = 0; pass < 2; pass++) { /* cloning default, then child */
-		igt_debug("Cloning %d\n", ext.clone_id);
-
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-		check_same_vm(i915, ext.clone_id, create.ctx_id);
-		gem_context_destroy(i915, create.ctx_id);
-
-		set.value = vm_id[pass];
-		set.ctx_id = ext.clone_id;
-		gem_context_set_param(i915, &set);
-
-		igt_assert_eq(ctx_create_ioctl(i915, &create), 0);
-		check_same_vm(i915, ext.clone_id, create.ctx_id);
-		gem_context_destroy(i915, create.ctx_id);
-
-		ext.clone_id = gem_context_create(i915);
-	}
-
-	gem_context_destroy(i915, ext.clone_id);
-
-	for (int i = 0; i < ARRAY_SIZE(vm_id); i++)
-		gem_vm_destroy(i915, vm_id[i]);
-
-	close(i915);
-}
-
-igt_main
-{
-	int i915 = -1;
-
-	igt_fixture {
-		i915 = drm_open_driver(DRIVER_INTEL);
-		igt_require_gem(i915);
-		gem_require_contexts(i915);
-
-		igt_require(gem_has_context_clone(i915));
-		igt_fork_hang_detector(i915);
-	}
-
-	igt_subtest("invalid")
-		invalid_clone(i915);
-
-	igt_subtest("engines")
-		clone_engines(i915);
-
-	igt_subtest("flags")
-		clone_flags(i915);
-
-	igt_subtest("scheduler")
-		clone_scheduler(i915);
-
-	igt_subtest("vm")
-		clone_vm(i915);
-
-	igt_fixture {
-		igt_stop_hang_detector();
-		close(i915);
-	}
-}
diff --git a/tests/meson.build b/tests/meson.build
index 2c579d4c..f8f0beb2 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -126,7 +126,6 @@ i915_progs = [
 	'gem_concurrent_blit',
 	'gem_cs_tlb',
 	'gem_ctx_bad_destroy',
-	'gem_ctx_clone',
 	'gem_ctx_create',
 	'gem_ctx_engines',
 	'gem_ctx_exec',
-- 
2.31.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

  parent reply	other threads:[~2021-04-15 19:12 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-15 19:10 [igt-dev] [PATCH i-g-t 00/74] Stop depending on context mutation Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 01/74] tests/i915: Drop gem_ctx_ringsize Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 02/74] tests/i915/gem_exec_balancer: Drop the ringsize subtest Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 03/74] tests/i915/gem_exec_endless: Stop setting the ring size Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 04/74] tests/i915/gem_ctx_param: Drop the zeromap subtests Jason Ekstrand
2021-04-15 19:10 ` Jason Ekstrand [this message]
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 06/74] lib/i915/gem_engine_topology: Expose the __query_engines helper Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 07/74] lib/i915/gem_context: Add gem_context_create_ext helpers Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 08/74] lib: Add an intel_ctx wrapper struct and helpers (v2) Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 09/74] lib/i915/gem_engine_topology: Rework query_engine_list() Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 10/74] lib/i915/gem_engine_topology: Factor out static engine listing Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 11/74] lib/i915/gem_engine_topology: Add an iterator which doesn't munge contexts Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 12/74] lib/i915/gem_engine_topology: Add an iterator for intel_ctx_t Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 13/74] tests/i915/gem_exec_basic: Convert to intel_ctx_t Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 14/74] lib/igt_spin: Rename igt_spin_factory::ctx to ctx_id Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 15/74] lib/igt_spin: Support intel_ctx_t Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 16/74] tests/i915/gem_exec_fence: Move the engine data into inter_engine_context Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 17/74] tests/i915/gem_exec_fence: Convert to intel_ctx_t Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 18/74] tests/i915/gem_exec_schedule: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 19/74] tests/i915/perf_pmu: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 20/74] tests/i915/gem_exec_nop: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 21/74] tests/i915/gem_exec_reloc: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 22/74] tests/i915/gem_busy: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 23/74] tests/i915/gem_ctx_isolation: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 24/74] tests/i915/gem_exec_async: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 25/74] tests/i915/sysfs_clients: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 26/74] tests/i915/gem_exec_fair: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 27/74] tests/i915/gem_spin_batch: " Jason Ekstrand
2021-04-15 19:10 ` [igt-dev] [PATCH i-g-t 28/74] tests/i915/gem_exec_store: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 29/74] tests/amdgpu/amd_prime: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 30/74] tests/i915/i915_hangman: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 31/74] tests/i915/gem_ringfill: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 32/74] tests/prime_busy: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 33/74] tests/prime_vgem: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 34/74] tests/gem_exec_whisper: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 35/74] tests/i915/gem_ctx_exec: Stop cloning contexts in close_race Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 36/74] tests/i915/gem_ctx_exec: Convert to intel_ctx_t Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 37/74] tests/i915/gem_exec_suspend: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 38/74] tests/i915/gem_sync: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 39/74] tests/i915/gem_userptr_blits: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 40/74] tests/i915/gem_wait: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 41/74] tests/i915/gem_request_retire: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 42/74] tests/i915/gem_ctx_shared: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 43/74] tests/i915/gem_ctx_shared: Stop cloning contexts Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 44/74] tests/i915/gem_create: Convert to intel_ctx_t Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 45/74] tests/i915/gem_ctx_switch: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 46/74] tests/i915/gem_exec_parallel: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 47/74] tests/i915/gem_exec_latency: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 48/74] tests/i915/gem_watchdog: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 49/74] tests/i915/gem_shrink: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 50/74] tests/i915/gem_exec_params: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 51/74] tests/i915/gem_exec_gttfill: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 52/74] tests/i915/gem_exec_capture: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 53/74] tests/i915/gem_exec_create: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 54/74] tests/i915/gem_exec_await: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 55/74] tests/i915/gem_ctx_persistence: Drop the clone subtest Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 56/74] tests/i915/gem_ctx_persistence: Drop the engine replace subtests Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 57/74] tests/i915/gem_ctx_persistence: Convert to intel_ctx_t Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 58/74] tests/i915/module_load: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 59/74] tests/i915/pm_rc6_residency: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 60/74] tests/i915/gem_cs_tlb: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 61/74] tests/core_hotplug: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 62/74] tests/i915/gem_exec_balancer: Stop cloning engines Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 63/74] tests/i915/gem_exec_balancer: Don't reset engines on a context Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 64/74] tests/i915/gem_exec_balancer: Stop munging ctx0 engines Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 65/74] tests/i915/gem_exec_endless: " Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 66/74] lib/i915: Use for_each_physical_ring for submission tests Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 67/74] tests/i915/gem_ctx_engines: Rework execute-one* Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 68/74] tests/i915/gem_ctx_engines: Use better engine iteration Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 69/74] tests/i915/gem_ctx_engines: Drop the idempotent subtest Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 70/74] tests/i915/gem_ctx_create: Convert benchmarks to intel_ctx_t Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 71/74] lib/i915/gem_context: Delete all the context clone/copy stuff Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 72/74] tests/i915/gem_ctx_engines: Delete the libapi subtest Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 73/74] lib/igt_dummyload: Stop supporting ALL_ENGINES without an intel_ctx_t Jason Ekstrand
2021-04-15 19:11 ` [igt-dev] [PATCH i-g-t 74/74] lib/i915/gem_engine_topology: Delete the old physical engine iterators Jason Ekstrand
2021-04-15 19:44 ` [igt-dev] ✓ Fi.CI.BAT: success for Stop depending on context mutation (rev3) Patchwork
2021-04-15 20:55 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2021-04-16 21:03 ` [igt-dev] [PATCH i-g-t 00/74] Stop depending on context mutation Ruhl, Michael J
  -- strict thread matches above, loose matches on Subject: below --
2021-04-13  3:52 Jason Ekstrand
2021-04-13  3:52 ` [igt-dev] [PATCH i-g-t 05/74] tests/i915: Drop gem_ctx_clone Jason Ekstrand

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210415191145.2137858-6-jason@jlekstrand.net \
    --to=jason@jlekstrand.net \
    --cc=igt-dev@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.