[igt-dev] [PATCH i-g-t v2 5/7] tests/i915/gem_basic: add multigpu-create-close subtest
Kamil Konieczny
kamil.konieczny at linux.intel.com
Tue Dec 6 11:20:31 UTC 2022
Add one subtest to run on more than one gpu simultanosly. For
this to work test should be run with --device option on machine
with two or more dgfx cards, for example with:
--device=pci:vendor=Intel,device=discrete,card=all
Test will skip if only one card is present.
v2: remove code for setting gpu_count=1 (Mauro)
Cc: Anna Karas <anna.karas at intel.com>
Cc: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Cc: Mauro Carvalho Chehab <mauro.chehab at linux.intel.com>
Cc: Petri Latvala <petri.latvala at intel.com>
Signed-off-by: Kamil Konieczny <kamil.konieczny at linux.intel.com>
Reviewed-by: Mauro Carvalho Chehab <mchehab at kernel.org>
---
tests/i915/gem_basic.c | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/tests/i915/gem_basic.c b/tests/i915/gem_basic.c
index 2aa5d850..3dd790c6 100644
--- a/tests/i915/gem_basic.c
+++ b/tests/i915/gem_basic.c
@@ -40,6 +40,7 @@
#include "i915/gem_create.h"
#include "igt.h"
#include "igt_types.h"
+#include "lib/igt_device_scan.h"
IGT_TEST_DESCRIPTION("Tests basic gem_create and gem_close IOCTLs");
@@ -83,9 +84,12 @@ test_create_fd_close(int fd)
igt_main
{
igt_fd_t(fd);
+ int gpu_count;
- igt_fixture
+ igt_fixture {
fd = drm_open_driver(DRIVER_INTEL);
+ gpu_count = igt_device_filter_count();
+ }
igt_describe("Verify that gem_close fails with bad params.");
igt_subtest("bad-close")
@@ -95,6 +99,21 @@ igt_main
igt_subtest("create-close")
test_create_close(fd);
+ igt_describe("Verify basic functionality of gem_create and gem_close on multi-GPU.");
+ igt_subtest("multigpu-create-close") {
+ igt_require(gpu_count > 1);
+ igt_multi_fork(child, gpu_count) {
+ int gpu_fd;
+
+ gpu_fd = __drm_open_driver_another(child, DRIVER_INTEL);
+ igt_assert_f(gpu_fd > 0, "cannot open gpu-%d, errno=%d\n", child, errno);
+ test_create_close(gpu_fd);
+ close(gpu_fd);
+ }
+
+ igt_waitchildren();
+ }
+
igt_describe("Verify that closing drm driver is possible with opened gem object.");
igt_subtest("create-fd-close")
test_create_fd_close(fd);
--
2.34.1
More information about the igt-dev
mailing list