[igt-dev] [PATCH v2 i-g-t 22/23] tests/kms_addfb_basic: Add invalid buffer object test for discrete

venkata.sai.patnana at intel.com venkata.sai.patnana at intel.com
Thu Jun 3 14:40:21 UTC 2021


From: Mohammed Khajapasha <mohammed.khajapasha at intel.com>

Add invalid buffer object test case for discrete, to validate
IOCTL_MODE_ADDFB2 ioctl for LMEM, the framebuffer backing
gem objects should be from local memory for discrete.

v1: Add invalid-bo test case for LMEM framebuffer object
v2: Correcting error value comparing
v3: Addressed review comments <Petri>
v4: Using do_ioctl_err() for addfb2 ioctl <Petri>
v5: Addressed review comments <Modem, Bhanuprakash>
v6: Using size to allocate buffer object
v7: Updated error check value for testcase

Cc: Latvala, Petri <petri.latvala at intel.com>
Cc: Michael J. Ruhl <michael.j.ruhl at intel.com>
Signed-off-by: Mohammed Khajapasha <mohammed.khajapasha at intel.com>
---
 tests/kms_addfb_basic.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c
index 1fb18d668f..c2afa0703e 100644
--- a/tests/kms_addfb_basic.c
+++ b/tests/kms_addfb_basic.c
@@ -40,6 +40,7 @@
 
 #include "igt_rand.h"
 #include "igt_device.h"
+#include "i915/intel_memory_region.h"
 
 uint32_t gem_bo;
 uint32_t gem_bo_small;
@@ -146,6 +147,21 @@ static void invalid_tests(int fd)
 		igt_assert(f.modifier[0] == 0);
 	}
 
+	igt_subtest("invalid-smem-bo-on-discrete") {
+		int devid;
+		uint32_t handle, stride;
+		uint64_t size;
+
+		igt_require_intel(fd);
+		devid = intel_get_drm_devid(fd);
+		igt_require(HAS_LMEM(devid));
+		igt_calc_fb_size(fd, f.width, f.height,
+				DRM_FORMAT_XRGB8888, 0, &size, &stride);
+		handle = gem_create_in_memory_regions(fd, size, REGION_SMEM);
+		f.handles[0] = handle;
+		do_ioctl_err(fd, LOCAL_DRM_IOCTL_MODE_ADDFB2, &f, EREMOTE);
+	}
+
 	igt_describe("Check if addfb2 call works for legacy formats");
 	igt_subtest("legacy-format") {
 		struct {
-- 
2.25.1



More information about the igt-dev mailing list