* [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length @ 2021-07-08 12:25 Matthew Auld 2021-07-08 12:25 ` [Intel-gfx] [PATCH i-g-t 2/3] tests/i915_query: extract query_garbage_items Matthew Auld ` (4 more replies) 0 siblings, 5 replies; 10+ messages in thread From: Matthew Auld @ 2021-07-08 12:25 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx If the regions query fails then the error will be encoded in the item.length, while the ioctl will still return success. Reported-by: Ville Syrjala <ville.syrjala@linux.intel.com> Signed-off-by: Matthew Auld <matthew.auld@intel.com> --- lib/i915/intel_memory_region.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/i915/intel_memory_region.c b/lib/i915/intel_memory_region.c index 144ae12c..e1e210f2 100644 --- a/lib/i915/intel_memory_region.c +++ b/lib/i915/intel_memory_region.c @@ -119,6 +119,13 @@ struct drm_i915_query_memory_regions *gem_get_query_memory_regions(int fd) memset(&item, 0, sizeof(item)); item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; i915_query_items(fd, &item, 1); + /* + * Any DRM_I915_QUERY_MEMORY_REGIONS specific errors are encoded in the + * item.length, even though the ioctl might still return success. + */ + igt_assert_f(item.length > 0, + "DRM_I915_QUERY_MEMORY_REGIONS failed with %d\n", + item.length); query_info = calloc(1, item.length); -- 2.26.3 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Intel-gfx] [PATCH i-g-t 2/3] tests/i915_query: extract query_garbage_items 2021-07-08 12:25 [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length Matthew Auld @ 2021-07-08 12:25 ` Matthew Auld 2021-07-26 10:13 ` [Intel-gfx] [igt-dev] " Ramalingam C 2021-07-08 12:25 ` [igt-dev] " Matthew Auld ` (3 subsequent siblings) 4 siblings, 1 reply; 10+ messages in thread From: Matthew Auld @ 2021-07-08 12:25 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx We should be able to re-use this for other queries. Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Ville Syrjala <ville.syrjala@linux.intel.com> --- tests/i915/i915_query.c | 46 ++++++++++++++++++++++++----------------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/tests/i915/i915_query.c b/tests/i915/i915_query.c index 29b938e9..34965841 100644 --- a/tests/i915/i915_query.c +++ b/tests/i915/i915_query.c @@ -92,7 +92,8 @@ static void test_query_garbage(int fd) i915_query_items_err(fd, &item, 1, EINVAL); } -static void test_query_garbage_items(int fd) +static void test_query_garbage_items(int fd, int query_id, int min_item_size, + int sizeof_query_item) { struct drm_i915_query_item items[2]; struct drm_i915_query_item *items_ptr; @@ -103,7 +104,7 @@ static void test_query_garbage_items(int fd) * Subject to change in the future. */ memset(items, 0, sizeof(items)); - items[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; + items[0].query_id = query_id; items[0].flags = 42; i915_query_items(fd, items, 1); igt_assert_eq(items[0].length, -EINVAL); @@ -113,10 +114,10 @@ static void test_query_garbage_items(int fd) * one is properly processed. */ memset(items, 0, sizeof(items)); - items[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; + items[0].query_id = query_id; items[1].query_id = ULONG_MAX; i915_query_items(fd, items, 2); - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items[0].length); + igt_assert_lte(min_item_size, items[0].length); igt_assert_eq(items[1].length, -EINVAL); /* @@ -126,16 +127,16 @@ static void test_query_garbage_items(int fd) */ memset(items, 0, sizeof(items)); items[0].query_id = ULONG_MAX; - items[1].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; + items[1].query_id = query_id; i915_query_items(fd, items, 2); igt_assert_eq(items[0].length, -EINVAL); - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items[1].length); + igt_assert_lte(min_item_size, items[1].length); /* Test a couple of invalid data pointer in query item. */ memset(items, 0, sizeof(items)); - items[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; + items[0].query_id = query_id; i915_query_items(fd, items, 1); - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items[0].length); + igt_assert_lte(min_item_size, items[0].length); items[0].data_ptr = 0; i915_query_items(fd, items, 1); @@ -145,14 +146,13 @@ static void test_query_garbage_items(int fd) i915_query_items(fd, items, 1); igt_assert_eq(items[0].length, -EFAULT); - /* Test an invalid query item length. */ memset(items, 0, sizeof(items)); - items[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; - items[1].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; - items[1].length = sizeof(struct drm_i915_query_topology_info) - 1; + items[0].query_id = query_id; + items[1].query_id = query_id; + items[1].length = sizeof_query_item - 1; i915_query_items(fd, items, 2); - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items[0].length); + igt_assert_lte(min_item_size, items[0].length); igt_assert_eq(items[1].length, -EINVAL); /* @@ -162,9 +162,9 @@ static void test_query_garbage_items(int fd) * has been removed from our address space. */ items_ptr = mmap(0, 4096, PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); - items_ptr[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; + items_ptr[0].query_id = query_id; i915_query_items(fd, items_ptr, 1); - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items_ptr[0].length); + igt_assert_lte(min_item_size, items_ptr[0].length); munmap(items_ptr, 4096); i915_query_items_err(fd, items_ptr, 1, EFAULT); @@ -173,7 +173,7 @@ static void test_query_garbage_items(int fd) * the kernel errors out with EFAULT. */ items_ptr = mmap(0, 4096, PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); - items_ptr[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; + items_ptr[0].query_id = query_id; igt_assert_eq(0, mprotect(items_ptr, 4096, PROT_READ)); i915_query_items_err(fd, items_ptr, 1, EFAULT); munmap(items_ptr, 4096); @@ -186,12 +186,20 @@ static void test_query_garbage_items(int fd) memset(items_ptr, 0, 8192); n_items = 8192 / sizeof(struct drm_i915_query_item); for (i = 0; i < n_items; i++) - items_ptr[i].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; + items_ptr[i].query_id = query_id; mprotect(((uint8_t *)items_ptr) + 4096, 4096, PROT_READ); i915_query_items_err(fd, items_ptr, n_items, EFAULT); munmap(items_ptr, 8192); } +static void test_query_topology_garbage_items(int fd) +{ + test_query_garbage_items(fd, + DRM_I915_QUERY_TOPOLOGY_INFO, + MIN_TOPOLOGY_ITEM_SIZE, + sizeof(struct drm_i915_query_topology_info)); +} + /* * Allocate more on both sides of where the kernel is going to write and verify * that it writes only where it's supposed to. @@ -738,9 +746,9 @@ igt_main igt_subtest("query-garbage") test_query_garbage(fd); - igt_subtest("query-garbage-items") { + igt_subtest("query-topology-garbage-items") { igt_require(query_topology_supported(fd)); - test_query_garbage_items(fd); + test_query_topology_garbage_items(fd); } igt_subtest("query-topology-kernel-writes") { -- 2.26.3 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [igt-dev] [PATCH i-g-t 2/3] tests/i915_query: extract query_garbage_items 2021-07-08 12:25 ` [Intel-gfx] [PATCH i-g-t 2/3] tests/i915_query: extract query_garbage_items Matthew Auld @ 2021-07-26 10:13 ` Ramalingam C 0 siblings, 0 replies; 10+ messages in thread From: Ramalingam C @ 2021-07-26 10:13 UTC (permalink / raw) To: Matthew Auld; +Cc: igt-dev, intel-gfx On 2021-07-08 at 13:25:53 +0100, Matthew Auld wrote: > We should be able to re-use this for other queries. LGTM Reviewed-by: Ramalingam C <ramalingam.c@intel.com> > > Signed-off-by: Matthew Auld <matthew.auld@intel.com> > Cc: Ville Syrjala <ville.syrjala@linux.intel.com> > --- > tests/i915/i915_query.c | 46 ++++++++++++++++++++++++----------------- > 1 file changed, 27 insertions(+), 19 deletions(-) > > diff --git a/tests/i915/i915_query.c b/tests/i915/i915_query.c > index 29b938e9..34965841 100644 > --- a/tests/i915/i915_query.c > +++ b/tests/i915/i915_query.c > @@ -92,7 +92,8 @@ static void test_query_garbage(int fd) > i915_query_items_err(fd, &item, 1, EINVAL); > } > > -static void test_query_garbage_items(int fd) > +static void test_query_garbage_items(int fd, int query_id, int min_item_size, > + int sizeof_query_item) > { > struct drm_i915_query_item items[2]; > struct drm_i915_query_item *items_ptr; > @@ -103,7 +104,7 @@ static void test_query_garbage_items(int fd) > * Subject to change in the future. > */ > memset(items, 0, sizeof(items)); > - items[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > + items[0].query_id = query_id; > items[0].flags = 42; > i915_query_items(fd, items, 1); > igt_assert_eq(items[0].length, -EINVAL); > @@ -113,10 +114,10 @@ static void test_query_garbage_items(int fd) > * one is properly processed. > */ > memset(items, 0, sizeof(items)); > - items[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > + items[0].query_id = query_id; > items[1].query_id = ULONG_MAX; > i915_query_items(fd, items, 2); > - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items[0].length); > + igt_assert_lte(min_item_size, items[0].length); > igt_assert_eq(items[1].length, -EINVAL); > > /* > @@ -126,16 +127,16 @@ static void test_query_garbage_items(int fd) > */ > memset(items, 0, sizeof(items)); > items[0].query_id = ULONG_MAX; > - items[1].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > + items[1].query_id = query_id; > i915_query_items(fd, items, 2); > igt_assert_eq(items[0].length, -EINVAL); > - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items[1].length); > + igt_assert_lte(min_item_size, items[1].length); > > /* Test a couple of invalid data pointer in query item. */ > memset(items, 0, sizeof(items)); > - items[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > + items[0].query_id = query_id; > i915_query_items(fd, items, 1); > - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items[0].length); > + igt_assert_lte(min_item_size, items[0].length); > > items[0].data_ptr = 0; > i915_query_items(fd, items, 1); > @@ -145,14 +146,13 @@ static void test_query_garbage_items(int fd) > i915_query_items(fd, items, 1); > igt_assert_eq(items[0].length, -EFAULT); > > - > /* Test an invalid query item length. */ > memset(items, 0, sizeof(items)); > - items[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > - items[1].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > - items[1].length = sizeof(struct drm_i915_query_topology_info) - 1; > + items[0].query_id = query_id; > + items[1].query_id = query_id; > + items[1].length = sizeof_query_item - 1; > i915_query_items(fd, items, 2); > - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items[0].length); > + igt_assert_lte(min_item_size, items[0].length); > igt_assert_eq(items[1].length, -EINVAL); > > /* > @@ -162,9 +162,9 @@ static void test_query_garbage_items(int fd) > * has been removed from our address space. > */ > items_ptr = mmap(0, 4096, PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); > - items_ptr[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > + items_ptr[0].query_id = query_id; > i915_query_items(fd, items_ptr, 1); > - igt_assert_lte(MIN_TOPOLOGY_ITEM_SIZE, items_ptr[0].length); > + igt_assert_lte(min_item_size, items_ptr[0].length); > munmap(items_ptr, 4096); > i915_query_items_err(fd, items_ptr, 1, EFAULT); > > @@ -173,7 +173,7 @@ static void test_query_garbage_items(int fd) > * the kernel errors out with EFAULT. > */ > items_ptr = mmap(0, 4096, PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); > - items_ptr[0].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > + items_ptr[0].query_id = query_id; > igt_assert_eq(0, mprotect(items_ptr, 4096, PROT_READ)); > i915_query_items_err(fd, items_ptr, 1, EFAULT); > munmap(items_ptr, 4096); > @@ -186,12 +186,20 @@ static void test_query_garbage_items(int fd) > memset(items_ptr, 0, 8192); > n_items = 8192 / sizeof(struct drm_i915_query_item); > for (i = 0; i < n_items; i++) > - items_ptr[i].query_id = DRM_I915_QUERY_TOPOLOGY_INFO; > + items_ptr[i].query_id = query_id; > mprotect(((uint8_t *)items_ptr) + 4096, 4096, PROT_READ); > i915_query_items_err(fd, items_ptr, n_items, EFAULT); > munmap(items_ptr, 8192); > } > > +static void test_query_topology_garbage_items(int fd) > +{ > + test_query_garbage_items(fd, > + DRM_I915_QUERY_TOPOLOGY_INFO, > + MIN_TOPOLOGY_ITEM_SIZE, > + sizeof(struct drm_i915_query_topology_info)); > +} > + > /* > * Allocate more on both sides of where the kernel is going to write and verify > * that it writes only where it's supposed to. > @@ -738,9 +746,9 @@ igt_main > igt_subtest("query-garbage") > test_query_garbage(fd); > > - igt_subtest("query-garbage-items") { > + igt_subtest("query-topology-garbage-items") { > igt_require(query_topology_supported(fd)); > - test_query_garbage_items(fd); > + test_query_topology_garbage_items(fd); > } > > igt_subtest("query-topology-kernel-writes") { > -- > 2.26.3 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Intel-gfx] [PATCH i-g-t 3/3] tests/i915_query: add some sanity checking around regions query 2021-07-08 12:25 [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length Matthew Auld @ 2021-07-08 12:25 ` Matthew Auld 2021-07-08 12:25 ` [igt-dev] " Matthew Auld ` (3 subsequent siblings) 4 siblings, 0 replies; 10+ messages in thread From: Matthew Auld @ 2021-07-08 12:25 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx Ensure if we feed garbage into DRM_I915_QUERY_MEMORY_REGIONS it does indeed fail as expected. Also add some asserts for the invariants with the probed regions, for example we should always have at least system memory. Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Ville Syrjala <ville.syrjala@linux.intel.com> --- tests/i915/i915_query.c | 127 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) diff --git a/tests/i915/i915_query.c b/tests/i915/i915_query.c index 34965841..78bd4a2b 100644 --- a/tests/i915/i915_query.c +++ b/tests/i915/i915_query.c @@ -33,6 +33,10 @@ IGT_TEST_DESCRIPTION("Testing the i915 query uAPI."); */ #define MIN_TOPOLOGY_ITEM_SIZE (sizeof(struct drm_i915_query_topology_info) + 3) +/* All devices should have at least one region. */ +#define MIN_REGIONS_ITEM_SIZE (sizeof(struct drm_i915_query_memory_regions) + \ + sizeof(struct drm_i915_memory_region_info)) + static int __i915_query(int fd, struct drm_i915_query *q) { @@ -491,6 +495,119 @@ test_query_topology_known_pci_ids(int fd, int devid) free(topo_info); } +static bool query_regions_supported(int fd) +{ + struct drm_i915_query_item item = { + .query_id = DRM_I915_QUERY_MEMORY_REGIONS, + }; + + return __i915_query_items(fd, &item, 1) == 0 && item.length > 0; +} + +static void test_query_regions_garbage_items(int fd) +{ + struct drm_i915_query_memory_regions *regions; + struct drm_i915_query_item item; + int i; + + test_query_garbage_items(fd, + DRM_I915_QUERY_MEMORY_REGIONS, + MIN_REGIONS_ITEM_SIZE, + sizeof(struct drm_i915_query_memory_regions)); + + memset(&item, 0, sizeof(item)); + item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; + i915_query_items(fd, &item, 1); + igt_assert(item.length > 0); + + regions = calloc(1, item.length); + item.data_ptr = to_user_pointer(regions); + + /* Bogus; in-MBZ */ + for (i = 0; i < ARRAY_SIZE(regions->rsvd); i++) { + regions->rsvd[i] = 0xdeadbeaf; + i915_query_items(fd, &item, 1); + igt_assert_eq(item.length, -EINVAL); + regions->rsvd[i] = 0; + } + + i915_query_items(fd, &item, 1); + igt_assert(regions->num_regions); + igt_assert(item.length > 0); + + /* Bogus; out-MBZ */ + for (i = 0; i < regions->num_regions; i++) { + struct drm_i915_memory_region_info info = regions->regions[i]; + int j; + + igt_assert_eq_u32(info.rsvd0, 0); + + for (j = 0; j < ARRAY_SIZE(info.rsvd1); j++) + igt_assert_eq_u32(info.rsvd1[j], 0); + } + + /* Bogus; kernel is meant to set this */ + regions->num_regions = 1; + i915_query_items(fd, &item, 1); + igt_assert_eq(item.length, -EINVAL); + regions->num_regions = 0; + + free(regions); +} + +static void test_query_regions_sanity_check(int fd) +{ + struct drm_i915_query_memory_regions *regions; + struct drm_i915_query_item item; + bool found_system; + int i; + + memset(&item, 0, sizeof(item)); + item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; + i915_query_items(fd, &item, 1); + igt_assert(item.length > 0); + + regions = calloc(1, item.length); + + item.data_ptr = to_user_pointer(regions); + i915_query_items(fd, &item, 1); + + /* We should always have at least one region */ + igt_assert(regions->num_regions); + + found_system = false; + for (i = 0; i < regions->num_regions; i++) { + struct drm_i915_gem_memory_class_instance r1 = + regions->regions[i].region; + int j; + + if (r1.memory_class == I915_MEMORY_CLASS_SYSTEM) { + igt_assert_eq(r1.memory_instance, 0); + found_system = true; + } + + igt_assert(r1.memory_class == I915_MEMORY_CLASS_SYSTEM || + r1.memory_class == I915_MEMORY_CLASS_DEVICE); + + for (j = 0; j < regions->num_regions; j++) { + struct drm_i915_gem_memory_class_instance r2 = + regions->regions[j].region; + + if (i == j) + continue; + + /* All probed class:instance pairs must be unique */ + igt_assert(!(r1.memory_class == r2.memory_class && + r1.memory_instance == r2.memory_instance)); + } + } + + /* All devices should at least have system memory */ + igt_assert(found_system); + + free(regions); +} + static bool query_engine_info_supported(int fd) { struct drm_i915_query_item item = { @@ -779,6 +896,16 @@ igt_main test_query_topology_known_pci_ids(fd, devid); } + igt_subtest("query-regions-garbage-items") { + igt_require(query_regions_supported(fd)); + test_query_regions_garbage_items(fd); + } + + igt_subtest("query-regions-sanity-check") { + igt_require(query_regions_supported(fd)); + test_query_regions_sanity_check(fd); + } + igt_subtest_group { igt_fixture { igt_require(query_engine_info_supported(fd)); -- 2.26.3 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [igt-dev] [PATCH i-g-t 3/3] tests/i915_query: add some sanity checking around regions query @ 2021-07-08 12:25 ` Matthew Auld 0 siblings, 0 replies; 10+ messages in thread From: Matthew Auld @ 2021-07-08 12:25 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx Ensure if we feed garbage into DRM_I915_QUERY_MEMORY_REGIONS it does indeed fail as expected. Also add some asserts for the invariants with the probed regions, for example we should always have at least system memory. Signed-off-by: Matthew Auld <matthew.auld@intel.com> Cc: Ville Syrjala <ville.syrjala@linux.intel.com> --- tests/i915/i915_query.c | 127 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) diff --git a/tests/i915/i915_query.c b/tests/i915/i915_query.c index 34965841..78bd4a2b 100644 --- a/tests/i915/i915_query.c +++ b/tests/i915/i915_query.c @@ -33,6 +33,10 @@ IGT_TEST_DESCRIPTION("Testing the i915 query uAPI."); */ #define MIN_TOPOLOGY_ITEM_SIZE (sizeof(struct drm_i915_query_topology_info) + 3) +/* All devices should have at least one region. */ +#define MIN_REGIONS_ITEM_SIZE (sizeof(struct drm_i915_query_memory_regions) + \ + sizeof(struct drm_i915_memory_region_info)) + static int __i915_query(int fd, struct drm_i915_query *q) { @@ -491,6 +495,119 @@ test_query_topology_known_pci_ids(int fd, int devid) free(topo_info); } +static bool query_regions_supported(int fd) +{ + struct drm_i915_query_item item = { + .query_id = DRM_I915_QUERY_MEMORY_REGIONS, + }; + + return __i915_query_items(fd, &item, 1) == 0 && item.length > 0; +} + +static void test_query_regions_garbage_items(int fd) +{ + struct drm_i915_query_memory_regions *regions; + struct drm_i915_query_item item; + int i; + + test_query_garbage_items(fd, + DRM_I915_QUERY_MEMORY_REGIONS, + MIN_REGIONS_ITEM_SIZE, + sizeof(struct drm_i915_query_memory_regions)); + + memset(&item, 0, sizeof(item)); + item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; + i915_query_items(fd, &item, 1); + igt_assert(item.length > 0); + + regions = calloc(1, item.length); + item.data_ptr = to_user_pointer(regions); + + /* Bogus; in-MBZ */ + for (i = 0; i < ARRAY_SIZE(regions->rsvd); i++) { + regions->rsvd[i] = 0xdeadbeaf; + i915_query_items(fd, &item, 1); + igt_assert_eq(item.length, -EINVAL); + regions->rsvd[i] = 0; + } + + i915_query_items(fd, &item, 1); + igt_assert(regions->num_regions); + igt_assert(item.length > 0); + + /* Bogus; out-MBZ */ + for (i = 0; i < regions->num_regions; i++) { + struct drm_i915_memory_region_info info = regions->regions[i]; + int j; + + igt_assert_eq_u32(info.rsvd0, 0); + + for (j = 0; j < ARRAY_SIZE(info.rsvd1); j++) + igt_assert_eq_u32(info.rsvd1[j], 0); + } + + /* Bogus; kernel is meant to set this */ + regions->num_regions = 1; + i915_query_items(fd, &item, 1); + igt_assert_eq(item.length, -EINVAL); + regions->num_regions = 0; + + free(regions); +} + +static void test_query_regions_sanity_check(int fd) +{ + struct drm_i915_query_memory_regions *regions; + struct drm_i915_query_item item; + bool found_system; + int i; + + memset(&item, 0, sizeof(item)); + item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; + i915_query_items(fd, &item, 1); + igt_assert(item.length > 0); + + regions = calloc(1, item.length); + + item.data_ptr = to_user_pointer(regions); + i915_query_items(fd, &item, 1); + + /* We should always have at least one region */ + igt_assert(regions->num_regions); + + found_system = false; + for (i = 0; i < regions->num_regions; i++) { + struct drm_i915_gem_memory_class_instance r1 = + regions->regions[i].region; + int j; + + if (r1.memory_class == I915_MEMORY_CLASS_SYSTEM) { + igt_assert_eq(r1.memory_instance, 0); + found_system = true; + } + + igt_assert(r1.memory_class == I915_MEMORY_CLASS_SYSTEM || + r1.memory_class == I915_MEMORY_CLASS_DEVICE); + + for (j = 0; j < regions->num_regions; j++) { + struct drm_i915_gem_memory_class_instance r2 = + regions->regions[j].region; + + if (i == j) + continue; + + /* All probed class:instance pairs must be unique */ + igt_assert(!(r1.memory_class == r2.memory_class && + r1.memory_instance == r2.memory_instance)); + } + } + + /* All devices should at least have system memory */ + igt_assert(found_system); + + free(regions); +} + static bool query_engine_info_supported(int fd) { struct drm_i915_query_item item = { @@ -779,6 +896,16 @@ igt_main test_query_topology_known_pci_ids(fd, devid); } + igt_subtest("query-regions-garbage-items") { + igt_require(query_regions_supported(fd)); + test_query_regions_garbage_items(fd); + } + + igt_subtest("query-regions-sanity-check") { + igt_require(query_regions_supported(fd)); + test_query_regions_sanity_check(fd); + } + igt_subtest_group { igt_fixture { igt_require(query_engine_info_supported(fd)); -- 2.26.3 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [igt-dev] [PATCH i-g-t 3/3] tests/i915_query: add some sanity checking around regions query 2021-07-08 12:25 ` [igt-dev] " Matthew Auld (?) @ 2021-07-26 11:48 ` Ramalingam C -1 siblings, 0 replies; 10+ messages in thread From: Ramalingam C @ 2021-07-26 11:48 UTC (permalink / raw) To: Matthew Auld; +Cc: igt-dev, intel-gfx On 2021-07-08 at 13:25:54 +0100, Matthew Auld wrote: > Ensure if we feed garbage into DRM_I915_QUERY_MEMORY_REGIONS it does > indeed fail as expected. Also add some asserts for the invariants with > the probed regions, for example we should always have at least system > memory. LGTM. Reviewed-by: Ramalingam C <ramalingam.c@intel.com> > > Signed-off-by: Matthew Auld <matthew.auld@intel.com> > Cc: Ville Syrjala <ville.syrjala@linux.intel.com> > --- > tests/i915/i915_query.c | 127 ++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 127 insertions(+) > > diff --git a/tests/i915/i915_query.c b/tests/i915/i915_query.c > index 34965841..78bd4a2b 100644 > --- a/tests/i915/i915_query.c > +++ b/tests/i915/i915_query.c > @@ -33,6 +33,10 @@ IGT_TEST_DESCRIPTION("Testing the i915 query uAPI."); > */ > #define MIN_TOPOLOGY_ITEM_SIZE (sizeof(struct drm_i915_query_topology_info) + 3) > > +/* All devices should have at least one region. */ > +#define MIN_REGIONS_ITEM_SIZE (sizeof(struct drm_i915_query_memory_regions) + \ > + sizeof(struct drm_i915_memory_region_info)) > + > static int > __i915_query(int fd, struct drm_i915_query *q) > { > @@ -491,6 +495,119 @@ test_query_topology_known_pci_ids(int fd, int devid) > free(topo_info); > } > > +static bool query_regions_supported(int fd) > +{ > + struct drm_i915_query_item item = { > + .query_id = DRM_I915_QUERY_MEMORY_REGIONS, > + }; > + > + return __i915_query_items(fd, &item, 1) == 0 && item.length > 0; > +} > + > +static void test_query_regions_garbage_items(int fd) > +{ > + struct drm_i915_query_memory_regions *regions; > + struct drm_i915_query_item item; > + int i; > + > + test_query_garbage_items(fd, > + DRM_I915_QUERY_MEMORY_REGIONS, > + MIN_REGIONS_ITEM_SIZE, > + sizeof(struct drm_i915_query_memory_regions)); > + > + memset(&item, 0, sizeof(item)); > + item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; > + i915_query_items(fd, &item, 1); > + igt_assert(item.length > 0); > + > + regions = calloc(1, item.length); > + item.data_ptr = to_user_pointer(regions); > + > + /* Bogus; in-MBZ */ > + for (i = 0; i < ARRAY_SIZE(regions->rsvd); i++) { > + regions->rsvd[i] = 0xdeadbeaf; > + i915_query_items(fd, &item, 1); > + igt_assert_eq(item.length, -EINVAL); > + regions->rsvd[i] = 0; > + } > + > + i915_query_items(fd, &item, 1); > + igt_assert(regions->num_regions); > + igt_assert(item.length > 0); > + > + /* Bogus; out-MBZ */ > + for (i = 0; i < regions->num_regions; i++) { > + struct drm_i915_memory_region_info info = regions->regions[i]; > + int j; > + > + igt_assert_eq_u32(info.rsvd0, 0); > + > + for (j = 0; j < ARRAY_SIZE(info.rsvd1); j++) > + igt_assert_eq_u32(info.rsvd1[j], 0); > + } > + > + /* Bogus; kernel is meant to set this */ > + regions->num_regions = 1; > + i915_query_items(fd, &item, 1); > + igt_assert_eq(item.length, -EINVAL); > + regions->num_regions = 0; > + > + free(regions); > +} > + > +static void test_query_regions_sanity_check(int fd) > +{ > + struct drm_i915_query_memory_regions *regions; > + struct drm_i915_query_item item; > + bool found_system; > + int i; > + > + memset(&item, 0, sizeof(item)); > + item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; > + i915_query_items(fd, &item, 1); > + igt_assert(item.length > 0); > + > + regions = calloc(1, item.length); > + > + item.data_ptr = to_user_pointer(regions); > + i915_query_items(fd, &item, 1); > + > + /* We should always have at least one region */ > + igt_assert(regions->num_regions); > + > + found_system = false; > + for (i = 0; i < regions->num_regions; i++) { > + struct drm_i915_gem_memory_class_instance r1 = > + regions->regions[i].region; > + int j; > + > + if (r1.memory_class == I915_MEMORY_CLASS_SYSTEM) { > + igt_assert_eq(r1.memory_instance, 0); > + found_system = true; > + } > + > + igt_assert(r1.memory_class == I915_MEMORY_CLASS_SYSTEM || > + r1.memory_class == I915_MEMORY_CLASS_DEVICE); > + > + for (j = 0; j < regions->num_regions; j++) { > + struct drm_i915_gem_memory_class_instance r2 = > + regions->regions[j].region; > + > + if (i == j) > + continue; > + > + /* All probed class:instance pairs must be unique */ > + igt_assert(!(r1.memory_class == r2.memory_class && > + r1.memory_instance == r2.memory_instance)); > + } > + } > + > + /* All devices should at least have system memory */ > + igt_assert(found_system); > + > + free(regions); > +} > + > static bool query_engine_info_supported(int fd) > { > struct drm_i915_query_item item = { > @@ -779,6 +896,16 @@ igt_main > test_query_topology_known_pci_ids(fd, devid); > } > > + igt_subtest("query-regions-garbage-items") { > + igt_require(query_regions_supported(fd)); > + test_query_regions_garbage_items(fd); > + } > + > + igt_subtest("query-regions-sanity-check") { > + igt_require(query_regions_supported(fd)); > + test_query_regions_sanity_check(fd); > + } > + > igt_subtest_group { > igt_fixture { > igt_require(query_engine_info_supported(fd)); > -- > 2.26.3 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/3] lib/intel_memory_region: verify item.length 2021-07-08 12:25 [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length Matthew Auld 2021-07-08 12:25 ` [Intel-gfx] [PATCH i-g-t 2/3] tests/i915_query: extract query_garbage_items Matthew Auld 2021-07-08 12:25 ` [igt-dev] " Matthew Auld @ 2021-07-08 16:27 ` Patchwork 2021-07-09 0:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 2021-07-26 9:32 ` [igt-dev] " Ramalingam C 4 siblings, 0 replies; 10+ messages in thread From: Patchwork @ 2021-07-08 16:27 UTC (permalink / raw) To: Matthew Auld; +Cc: igt-dev [-- Attachment #1.1: Type: text/plain, Size: 4627 bytes --] == Series Details == Series: series starting with [i-g-t,1/3] lib/intel_memory_region: verify item.length URL : https://patchwork.freedesktop.org/series/92317/ State : success == Summary == CI Bug Log - changes from CI_DRM_10317 -> IGTPW_5995 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/index.html Known issues ------------ Here are the changes found in IGTPW_5995 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_huc_copy@huc-copy: - fi-skl-6700k2: NOTRUN -> [SKIP][1] ([fdo#109271] / [i915#2190]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-skl-6700k2/igt@gem_huc_copy@huc-copy.html * igt@kms_chamelium@common-hpd-after-suspend: - fi-kbl-7500u: [PASS][2] -> [DMESG-FAIL][3] ([i915#165]) [2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/fi-kbl-7500u/igt@kms_chamelium@common-hpd-after-suspend.html [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-kbl-7500u/igt@kms_chamelium@common-hpd-after-suspend.html * igt@kms_chamelium@dp-crc-fast: - fi-kbl-7500u: [PASS][4] -> [FAIL][5] ([i915#1372]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html * igt@kms_chamelium@dp-hpd-fast: - fi-skl-6700k2: NOTRUN -> [SKIP][6] ([fdo#109271]) +11 similar issues [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-skl-6700k2/igt@kms_chamelium@dp-hpd-fast.html * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d: - fi-skl-6700k2: NOTRUN -> [SKIP][7] ([fdo#109271] / [i915#533]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-skl-6700k2/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html * igt@runner@aborted: - fi-skl-6700k2: NOTRUN -> [FAIL][8] ([i915#2722] / [i915#3363] / [i915#3744]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-skl-6700k2/igt@runner@aborted.html * igt@vgem_basic@unload: - fi-skl-6700k2: NOTRUN -> [INCOMPLETE][9] ([i915#3744]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-skl-6700k2/igt@vgem_basic@unload.html #### Possible fixes #### * igt@gem_exec_suspend@basic-s3: - fi-skl-6700k2: [INCOMPLETE][10] ([i915#146] / [i915#198]) -> [PASS][11] [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/fi-skl-6700k2/igt@gem_exec_suspend@basic-s3.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-skl-6700k2/igt@gem_exec_suspend@basic-s3.html #### Warnings #### * igt@vgem_basic@unload: - fi-tgl-y: [INCOMPLETE][12] ([i915#3744]) -> [INCOMPLETE][13] ([i915#1982] / [i915#3744]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/fi-tgl-y/igt@vgem_basic@unload.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/fi-tgl-y/igt@vgem_basic@unload.html [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [i915#1372]: https://gitlab.freedesktop.org/drm/intel/issues/1372 [i915#146]: https://gitlab.freedesktop.org/drm/intel/issues/146 [i915#165]: https://gitlab.freedesktop.org/drm/intel/issues/165 [i915#198]: https://gitlab.freedesktop.org/drm/intel/issues/198 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#2722]: https://gitlab.freedesktop.org/drm/intel/issues/2722 [i915#3363]: https://gitlab.freedesktop.org/drm/intel/issues/3363 [i915#3744]: https://gitlab.freedesktop.org/drm/intel/issues/3744 [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533 Participating hosts (40 -> 39) ------------------------------ Missing (1): fi-bsw-cyan Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_6131 -> IGTPW_5995 CI-20190529: 20190529 CI_DRM_10317: 505afbd2be5c7d6490a00a079a1d790921344b7a @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_5995: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/index.html IGT_6131: ed6bf12d6608af1bc25d1cfdfae09f54e5566284 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Testlist changes == +igt@i915_query@query-regions-garbage-items +igt@i915_query@query-regions-sanity-check +igt@i915_query@query-topology-garbage-items -igt@i915_query@query-garbage-items == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/index.html [-- Attachment #1.2: Type: text/html, Size: 5781 bytes --] [-- Attachment #2: Type: text/plain, Size: 154 bytes --] _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/3] lib/intel_memory_region: verify item.length 2021-07-08 12:25 [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length Matthew Auld ` (2 preceding siblings ...) 2021-07-08 16:27 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/3] lib/intel_memory_region: verify item.length Patchwork @ 2021-07-09 0:34 ` Patchwork 2021-07-26 9:32 ` [igt-dev] " Ramalingam C 4 siblings, 0 replies; 10+ messages in thread From: Patchwork @ 2021-07-09 0:34 UTC (permalink / raw) To: Matthew Auld; +Cc: igt-dev [-- Attachment #1.1: Type: text/plain, Size: 29877 bytes --] == Series Details == Series: series starting with [i-g-t,1/3] lib/intel_memory_region: verify item.length URL : https://patchwork.freedesktop.org/series/92317/ State : success == Summary == CI Bug Log - changes from CI_DRM_10317_full -> IGTPW_5995_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/index.html New tests --------- New tests have been introduced between CI_DRM_10317_full and IGTPW_5995_full: ### New IGT tests (3) ### * igt@i915_query@query-regions-garbage-items: - Statuses : 4 pass(s) - Exec time: [0.0, 0.00] s * igt@i915_query@query-regions-sanity-check: - Statuses : 6 pass(s) - Exec time: [0.0] s * igt@i915_query@query-topology-garbage-items: - Statuses : 5 pass(s) 1 skip(s) - Exec time: [0.0, 0.00] s Known issues ------------ Here are the changes found in IGTPW_5995_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_ctx_isolation@preservation-s3@vcs0: - shard-kbl: [PASS][1] -> [DMESG-WARN][2] ([i915#180]) +5 similar issues [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl6/igt@gem_ctx_isolation@preservation-s3@vcs0.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl3/igt@gem_ctx_isolation@preservation-s3@vcs0.html * igt@gem_ctx_persistence@legacy-engines-queued: - shard-snb: NOTRUN -> [SKIP][3] ([fdo#109271] / [i915#1099]) +6 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-snb2/igt@gem_ctx_persistence@legacy-engines-queued.html * igt@gem_exec_fair@basic-pace@vecs0: - shard-tglb: [PASS][4] -> [FAIL][5] ([i915#2842]) +1 similar issue [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-tglb2/igt@gem_exec_fair@basic-pace@vecs0.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb3/igt@gem_exec_fair@basic-pace@vecs0.html * igt@gem_exec_params@no-blt: - shard-tglb: NOTRUN -> [SKIP][6] ([fdo#109283]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb1/igt@gem_exec_params@no-blt.html - shard-iclb: NOTRUN -> [SKIP][7] ([fdo#109283]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb3/igt@gem_exec_params@no-blt.html * igt@gem_mmap_gtt@coherency: - shard-tglb: NOTRUN -> [SKIP][8] ([fdo#111656]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb1/igt@gem_mmap_gtt@coherency.html - shard-iclb: NOTRUN -> [SKIP][9] ([fdo#109292]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb1/igt@gem_mmap_gtt@coherency.html * igt@gem_mmap_gtt@cpuset-medium-copy: - shard-iclb: [PASS][10] -> [FAIL][11] ([i915#307]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-iclb3/igt@gem_mmap_gtt@cpuset-medium-copy.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb2/igt@gem_mmap_gtt@cpuset-medium-copy.html * igt@gem_pread@exhaustion: - shard-snb: NOTRUN -> [WARN][12] ([i915#2658]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-snb6/igt@gem_pread@exhaustion.html * igt@gem_pwrite@basic-exhaustion: - shard-iclb: NOTRUN -> [WARN][13] ([i915#2658]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb5/igt@gem_pwrite@basic-exhaustion.html - shard-kbl: NOTRUN -> [WARN][14] ([i915#2658]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl1/igt@gem_pwrite@basic-exhaustion.html - shard-tglb: NOTRUN -> [WARN][15] ([i915#2658]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb2/igt@gem_pwrite@basic-exhaustion.html - shard-glk: NOTRUN -> [WARN][16] ([i915#2658]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-glk4/igt@gem_pwrite@basic-exhaustion.html * igt@gem_userptr_blits@dmabuf-sync: - shard-kbl: NOTRUN -> [SKIP][17] ([fdo#109271] / [i915#3323]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl4/igt@gem_userptr_blits@dmabuf-sync.html * igt@gen7_exec_parse@basic-allocation: - shard-iclb: NOTRUN -> [SKIP][18] ([fdo#109289]) [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb2/igt@gen7_exec_parse@basic-allocation.html * igt@gen9_exec_parse@bb-large: - shard-tglb: NOTRUN -> [SKIP][19] ([i915#2527]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb1/igt@gen9_exec_parse@bb-large.html - shard-glk: NOTRUN -> [FAIL][20] ([i915#3296]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-glk3/igt@gen9_exec_parse@bb-large.html - shard-apl: NOTRUN -> [FAIL][21] ([i915#3296]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl8/igt@gen9_exec_parse@bb-large.html - shard-kbl: NOTRUN -> [FAIL][22] ([i915#3296]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl4/igt@gen9_exec_parse@bb-large.html - shard-iclb: NOTRUN -> [SKIP][23] ([i915#2527]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb3/igt@gen9_exec_parse@bb-large.html * igt@i915_pm_dc@dc6-psr: - shard-iclb: NOTRUN -> [DMESG-WARN][24] ([i915#3698]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb6/igt@i915_pm_dc@dc6-psr.html - shard-tglb: NOTRUN -> [FAIL][25] ([i915#454]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb3/igt@i915_pm_dc@dc6-psr.html * igt@kms_big_fb@y-tiled-8bpp-rotate-90: - shard-tglb: NOTRUN -> [SKIP][26] ([fdo#111614]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb3/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html - shard-iclb: NOTRUN -> [SKIP][27] ([fdo#110725] / [fdo#111614]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb3/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html * igt@kms_big_fb@yf-tiled-addfb-size-overflow: - shard-tglb: NOTRUN -> [SKIP][28] ([fdo#111615]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb6/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html * igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_ccs: - shard-kbl: NOTRUN -> [SKIP][29] ([fdo#109271]) +96 similar issues [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl4/igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_ccs.html * igt@kms_ccs@pipe-d-missing-ccs-buffer-y_tiled_gen12_mc_ccs: - shard-tglb: NOTRUN -> [SKIP][30] ([i915#3689]) +4 similar issues [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb6/igt@kms_ccs@pipe-d-missing-ccs-buffer-y_tiled_gen12_mc_ccs.html * igt@kms_cdclk@mode-transition: - shard-apl: NOTRUN -> [SKIP][31] ([fdo#109271]) +298 similar issues [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl8/igt@kms_cdclk@mode-transition.html * igt@kms_chamelium@hdmi-edid-change-during-suspend: - shard-apl: NOTRUN -> [SKIP][32] ([fdo#109271] / [fdo#111827]) +24 similar issues [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl7/igt@kms_chamelium@hdmi-edid-change-during-suspend.html * igt@kms_color_chamelium@pipe-a-ctm-0-25: - shard-snb: NOTRUN -> [SKIP][33] ([fdo#109271] / [fdo#111827]) +22 similar issues [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-snb6/igt@kms_color_chamelium@pipe-a-ctm-0-25.html * igt@kms_color_chamelium@pipe-a-degamma: - shard-kbl: NOTRUN -> [SKIP][34] ([fdo#109271] / [fdo#111827]) +7 similar issues [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl4/igt@kms_color_chamelium@pipe-a-degamma.html - shard-iclb: NOTRUN -> [SKIP][35] ([fdo#109284] / [fdo#111827]) +2 similar issues [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb3/igt@kms_color_chamelium@pipe-a-degamma.html * igt@kms_color_chamelium@pipe-b-ctm-max: - shard-tglb: NOTRUN -> [SKIP][36] ([fdo#109284] / [fdo#111827]) +2 similar issues [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb2/igt@kms_color_chamelium@pipe-b-ctm-max.html - shard-glk: NOTRUN -> [SKIP][37] ([fdo#109271] / [fdo#111827]) +2 similar issues [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-glk4/igt@kms_color_chamelium@pipe-b-ctm-max.html * igt@kms_content_protection@srm: - shard-apl: NOTRUN -> [TIMEOUT][38] ([i915#1319]) +1 similar issue [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl7/igt@kms_content_protection@srm.html * igt@kms_content_protection@type1: - shard-iclb: NOTRUN -> [SKIP][39] ([fdo#109300] / [fdo#111066]) [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb5/igt@kms_content_protection@type1.html - shard-tglb: NOTRUN -> [SKIP][40] ([fdo#111828]) [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb6/igt@kms_content_protection@type1.html * igt@kms_cursor_crc@pipe-a-cursor-512x170-random: - shard-tglb: NOTRUN -> [SKIP][41] ([fdo#109279] / [i915#3359]) +1 similar issue [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb7/igt@kms_cursor_crc@pipe-a-cursor-512x170-random.html * igt@kms_cursor_crc@pipe-c-cursor-512x512-offscreen: - shard-iclb: NOTRUN -> [SKIP][42] ([fdo#109278] / [fdo#109279]) +1 similar issue [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb8/igt@kms_cursor_crc@pipe-c-cursor-512x512-offscreen.html * igt@kms_cursor_crc@pipe-c-cursor-suspend: - shard-apl: [PASS][43] -> [DMESG-WARN][44] ([i915#180]) +1 similar issue [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-apl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl1/igt@kms_cursor_crc@pipe-c-cursor-suspend.html * igt@kms_cursor_crc@pipe-d-cursor-256x256-rapid-movement: - shard-iclb: NOTRUN -> [SKIP][45] ([fdo#109278]) +16 similar issues [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb1/igt@kms_cursor_crc@pipe-d-cursor-256x256-rapid-movement.html * igt@kms_cursor_crc@pipe-d-cursor-32x10-onscreen: - shard-tglb: NOTRUN -> [SKIP][46] ([i915#3359]) +4 similar issues [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb5/igt@kms_cursor_crc@pipe-d-cursor-32x10-onscreen.html * igt@kms_cursor_legacy@cursorb-vs-flipa-toggle: - shard-iclb: NOTRUN -> [SKIP][47] ([fdo#109274] / [fdo#109278]) +1 similar issue [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb5/igt@kms_cursor_legacy@cursorb-vs-flipa-toggle.html * igt@kms_flip@2x-flip-vs-wf_vblank-interruptible: - shard-iclb: NOTRUN -> [SKIP][48] ([fdo#109274]) [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb4/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs: - shard-kbl: NOTRUN -> [SKIP][49] ([fdo#109271] / [i915#2672]) +1 similar issue [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl1/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-shrfb-pgflip-blt: - shard-tglb: NOTRUN -> [SKIP][50] ([fdo#111825]) +12 similar issues [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb5/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-shrfb-pgflip-blt.html * igt@kms_frontbuffer_tracking@fbcpsr-suspend: - shard-glk: NOTRUN -> [SKIP][51] ([fdo#109271]) +40 similar issues [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-glk5/igt@kms_frontbuffer_tracking@fbcpsr-suspend.html * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-render: - shard-iclb: NOTRUN -> [SKIP][52] ([fdo#109280]) +8 similar issues [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb1/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-render.html * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d: - shard-kbl: NOTRUN -> [SKIP][53] ([fdo#109271] / [i915#533]) [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl7/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html * igt@kms_pipe_crc_basic@read-crc-pipe-d-frame-sequence: - shard-apl: NOTRUN -> [SKIP][54] ([fdo#109271] / [i915#533]) +1 similar issue [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl7/igt@kms_pipe_crc_basic@read-crc-pipe-d-frame-sequence.html * igt@kms_plane_alpha_blend@pipe-b-alpha-7efc: - shard-kbl: NOTRUN -> [FAIL][55] ([fdo#108145] / [i915#265]) [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl1/igt@kms_plane_alpha_blend@pipe-b-alpha-7efc.html * igt@kms_plane_alpha_blend@pipe-c-alpha-basic: - shard-apl: NOTRUN -> [FAIL][56] ([fdo#108145] / [i915#265]) +5 similar issues [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl3/igt@kms_plane_alpha_blend@pipe-c-alpha-basic.html * igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping: - shard-apl: NOTRUN -> [SKIP][57] ([fdo#109271] / [i915#2733]) [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl7/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4: - shard-apl: NOTRUN -> [SKIP][58] ([fdo#109271] / [i915#658]) +6 similar issues [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl8/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4.html * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-5: - shard-glk: NOTRUN -> [SKIP][59] ([fdo#109271] / [i915#658]) +1 similar issue [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-glk6/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-5.html - shard-tglb: NOTRUN -> [SKIP][60] ([i915#2920]) +1 similar issue [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb1/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-5.html * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3: - shard-kbl: NOTRUN -> [SKIP][61] ([fdo#109271] / [i915#658]) +4 similar issues [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl3/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-4: - shard-iclb: NOTRUN -> [SKIP][62] ([i915#658]) +1 similar issue [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb8/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-4.html * igt@kms_psr@psr2_cursor_blt: - shard-iclb: [PASS][63] -> [SKIP][64] ([fdo#109441]) +2 similar issues [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-iclb2/igt@kms_psr@psr2_cursor_blt.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb4/igt@kms_psr@psr2_cursor_blt.html * igt@kms_setmode@basic: - shard-snb: NOTRUN -> [FAIL][65] ([i915#31]) [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-snb5/igt@kms_setmode@basic.html * igt@kms_vblank@pipe-d-query-forked-hang: - shard-snb: NOTRUN -> [SKIP][66] ([fdo#109271]) +414 similar issues [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-snb7/igt@kms_vblank@pipe-d-query-forked-hang.html * igt@kms_writeback@writeback-check-output: - shard-apl: NOTRUN -> [SKIP][67] ([fdo#109271] / [i915#2437]) +1 similar issue [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl6/igt@kms_writeback@writeback-check-output.html * igt@nouveau_crc@pipe-a-source-outp-complete: - shard-tglb: NOTRUN -> [SKIP][68] ([i915#2530]) [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb5/igt@nouveau_crc@pipe-a-source-outp-complete.html - shard-iclb: NOTRUN -> [SKIP][69] ([i915#2530]) [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb8/igt@nouveau_crc@pipe-a-source-outp-complete.html * igt@perf@mi-rpc: - shard-tglb: NOTRUN -> [SKIP][70] ([fdo#109289]) +1 similar issue [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb2/igt@perf@mi-rpc.html * igt@prime_nv_test@i915_blt_fill_nv_read: - shard-tglb: NOTRUN -> [SKIP][71] ([fdo#109291]) [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb6/igt@prime_nv_test@i915_blt_fill_nv_read.html - shard-iclb: NOTRUN -> [SKIP][72] ([fdo#109291]) [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb5/igt@prime_nv_test@i915_blt_fill_nv_read.html * igt@sysfs_clients@fair-7: - shard-apl: NOTRUN -> [SKIP][73] ([fdo#109271] / [i915#2994]) +5 similar issues [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl8/igt@sysfs_clients@fair-7.html * igt@sysfs_clients@sema-50: - shard-kbl: NOTRUN -> [SKIP][74] ([fdo#109271] / [i915#2994]) +1 similar issue [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl7/igt@sysfs_clients@sema-50.html #### Possible fixes #### * igt@gem_exec_fair@basic-flow@rcs0: - shard-tglb: [FAIL][75] ([i915#2842]) -> [PASS][76] [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-tglb2/igt@gem_exec_fair@basic-flow@rcs0.html [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb3/igt@gem_exec_fair@basic-flow@rcs0.html * igt@gem_exec_fair@basic-none@vecs0: - shard-kbl: [FAIL][77] ([i915#2842]) -> [PASS][78] [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl6/igt@gem_exec_fair@basic-none@vecs0.html [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl2/igt@gem_exec_fair@basic-none@vecs0.html * igt@gem_exec_fair@basic-throttle@rcs0: - shard-glk: [FAIL][79] ([i915#2842]) -> [PASS][80] +3 similar issues [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-glk8/igt@gem_exec_fair@basic-throttle@rcs0.html [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-glk7/igt@gem_exec_fair@basic-throttle@rcs0.html * igt@gem_exec_whisper@basic-normal-all: - shard-glk: [DMESG-WARN][81] ([i915#118] / [i915#95]) -> [PASS][82] +1 similar issue [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-glk1/igt@gem_exec_whisper@basic-normal-all.html [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-glk4/igt@gem_exec_whisper@basic-normal-all.html * igt@gem_huc_copy@huc-copy: - shard-tglb: [SKIP][83] ([i915#2190]) -> [PASS][84] [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-tglb6/igt@gem_huc_copy@huc-copy.html [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb7/igt@gem_huc_copy@huc-copy.html * igt@gem_vm_create@destroy-race: - shard-tglb: [FAIL][85] ([i915#2822]) -> [PASS][86] [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-tglb5/igt@gem_vm_create@destroy-race.html [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb3/igt@gem_vm_create@destroy-race.html * igt@kms_big_fb@linear-32bpp-rotate-180: - shard-iclb: [DMESG-WARN][87] ([i915#3621]) -> [PASS][88] [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-iclb1/igt@kms_big_fb@linear-32bpp-rotate-180.html [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb4/igt@kms_big_fb@linear-32bpp-rotate-180.html * igt@kms_cursor_crc@pipe-c-cursor-suspend: - shard-kbl: [DMESG-WARN][89] ([i915#180]) -> [PASS][90] +1 similar issue [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl3/igt@kms_cursor_crc@pipe-c-cursor-suspend.html [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl4/igt@kms_cursor_crc@pipe-c-cursor-suspend.html * igt@kms_cursor_edge_walk@pipe-a-64x64-left-edge: - shard-tglb: [DMESG-WARN][91] ([i915#2868]) -> [PASS][92] [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-tglb5/igt@kms_cursor_edge_walk@pipe-a-64x64-left-edge.html [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-tglb5/igt@kms_cursor_edge_walk@pipe-a-64x64-left-edge.html * igt@kms_flip@flip-vs-suspend@a-dp1: - shard-apl: [DMESG-WARN][93] ([i915#180]) -> [PASS][94] +1 similar issue [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-apl6/igt@kms_flip@flip-vs-suspend@a-dp1.html [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-apl2/igt@kms_flip@flip-vs-suspend@a-dp1.html * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-blt: - shard-glk: [FAIL][95] ([i915#2546] / [i915#49]) -> [PASS][96] [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-glk9/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-blt.html [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-glk4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-blt.html * igt@kms_psr@psr2_primary_mmap_cpu: - shard-iclb: [SKIP][97] ([fdo#109441]) -> [PASS][98] +2 similar issues [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-iclb4/igt@kms_psr@psr2_primary_mmap_cpu.html [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html #### Warnings #### * igt@gem_exec_fair@basic-pace@vecs0: - shard-kbl: [FAIL][99] ([i915#2842]) -> [SKIP][100] ([fdo#109271]) [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl3/igt@gem_exec_fair@basic-pace@vecs0.html [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl4/igt@gem_exec_fair@basic-pace@vecs0.html * igt@kms_dp_dsc@basic-dsc-enable-edp: - shard-iclb: [DMESG-WARN][101] ([i915#1226]) -> [SKIP][102] ([fdo#109349]) [101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb3/igt@kms_dp_dsc@basic-dsc-enable-edp.html * igt@kms_psr2_sf@plane-move-sf-dmg-area-0: - shard-iclb: [SKIP][103] ([i915#658]) -> [SKIP][104] ([i915#2920]) +1 similar issue [103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-iclb5/igt@kms_psr2_sf@plane-move-sf-dmg-area-0.html [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb2/igt@kms_psr2_sf@plane-move-sf-dmg-area-0.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2: - shard-iclb: [SKIP][105] ([i915#2920]) -> [SKIP][106] ([i915#658]) +2 similar issues [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2.html [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-iclb5/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2.html * igt@runner@aborted: - shard-kbl: ([FAIL][107], [FAIL][108], [FAIL][109], [FAIL][110], [FAIL][111], [FAIL][112]) ([i915#1436] / [i915#180] / [i915#1814] / [i915#2505] / [i915#2722] / [i915#3002] / [i915#3363] / [i915#3744]) -> ([FAIL][113], [FAIL][114], [FAIL][115], [FAIL][116], [FAIL][117]) ([i915#1436] / [i915#180] / [i915#2722] / [i915#3002] / [i915#3363] / [i915#3744]) [107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl3/igt@runner@aborted.html [108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl3/igt@runner@aborted.html [109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl6/igt@runner@aborted.html [110]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl4/igt@runner@aborted.html [111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl3/igt@runner@aborted.html [112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10317/shard-kbl2/igt@runner@aborted.html [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl7/igt@runner@aborted.html [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl3/igt@runner@aborted.html [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl3/igt@runner@aborted.html [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl2/igt@runner@aborted.html [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/shard-kbl3/igt@runner@aborted.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274 [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278 [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279 [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280 [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283 [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284 [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289 [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291 [fdo#109292]: https://bugs.freedesktop.org/show_bug.cgi?id=109292 [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300 [fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725 [fdo#111066]: https://bugs.freedesktop.org/show_bug.cgi?id=111066 [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614 [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615 [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656 [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [fdo#111828]: https://bugs.freedesktop.org/show_bug.cgi?id=111828 [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099 [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118 [i915#1226]: https://gitlab.freedesktop.org/drm/intel/issues/1226 [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319 [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437 [i915#2505]: https://gitlab.freedesktop.org/drm/intel/issues/2505 [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527 [i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530 [i915#2546]: https://gitlab.freedesktop.org/drm/intel/issues/2546 [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658 [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672 [i915#2722]: https://gitlab.freedesktop.org/drm/intel/issues/2722 [i915#2733]: https://gitlab.freedesktop.org/drm/intel/issues/2733 [i915#2822]: https://gitlab.freedesktop.org/drm/intel/issues/2822 [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842 [i915#2868]: https://gitlab.freedesktop.org/drm/intel/issues/2868 [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920 [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994 [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002 [i915#307]: https://gitlab.freedesktop.org/drm/intel/issues/307 [i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31 [i915#3296]: https://gitlab.freedesktop.org/drm/intel/issues/3296 [i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323 [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359 [i915#3363]: https://gitlab.freedesktop.org/drm/intel/issues/3363 [i915#3621]: https://gitlab.freedesktop.org/drm/intel/issues/3621 [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689 [i915#3698]: https://gitlab.freedesktop.org/drm/intel/issues/3698 [i915#3744]: https://gitlab.freedesktop.org/drm/intel/issues/3744 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49 [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533 [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 Participating hosts (11 -> 7) ------------------------------ Missing (4): pig-skl-6260u pig-kbl-iris shard-rkl pig-glk-j5005 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_6131 -> IGTPW_5995 * Piglit: piglit_4509 -> None CI-20190529: 20190529 CI_DRM_10317: 505afbd2be5c7d6490a00a079a1d790921344b7a @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_5995: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/index.html IGT_6131: ed6bf12d6608af1bc25d1cfdfae09f54e5566284 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5995/index.html [-- Attachment #1.2: Type: text/html, Size: 37693 bytes --] [-- Attachment #2: Type: text/plain, Size: 154 bytes --] _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length 2021-07-08 12:25 [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length Matthew Auld @ 2021-07-26 9:32 ` Ramalingam C 2021-07-08 12:25 ` [igt-dev] " Matthew Auld ` (3 subsequent siblings) 4 siblings, 0 replies; 10+ messages in thread From: Ramalingam C @ 2021-07-26 9:32 UTC (permalink / raw) To: Matthew Auld; +Cc: igt-dev, intel-gfx On 2021-07-08 at 13:25:52 +0100, Matthew Auld wrote: > If the regions query fails then the error will be encoded in the > item.length, while the ioctl will still return success. > > Reported-by: Ville Syrjala <ville.syrjala@linux.intel.com> > Signed-off-by: Matthew Auld <matthew.auld@intel.com> > --- > lib/i915/intel_memory_region.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/lib/i915/intel_memory_region.c b/lib/i915/intel_memory_region.c > index 144ae12c..e1e210f2 100644 > --- a/lib/i915/intel_memory_region.c > +++ b/lib/i915/intel_memory_region.c > @@ -119,6 +119,13 @@ struct drm_i915_query_memory_regions *gem_get_query_memory_regions(int fd) > memset(&item, 0, sizeof(item)); > item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; > i915_query_items(fd, &item, 1); > + /* > + * Any DRM_I915_QUERY_MEMORY_REGIONS specific errors are encoded in the > + * item.length, even though the ioctl might still return success. > + */ > + igt_assert_f(item.length > 0, > + "DRM_I915_QUERY_MEMORY_REGIONS failed with %d\n", > + item.length); LGTM. Reviewed-by: Ramalingam C <ramalingam.c@intel.com> > > query_info = calloc(1, item.length); > > -- > 2.26.3 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [igt-dev] [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length @ 2021-07-26 9:32 ` Ramalingam C 0 siblings, 0 replies; 10+ messages in thread From: Ramalingam C @ 2021-07-26 9:32 UTC (permalink / raw) To: Matthew Auld; +Cc: igt-dev, intel-gfx On 2021-07-08 at 13:25:52 +0100, Matthew Auld wrote: > If the regions query fails then the error will be encoded in the > item.length, while the ioctl will still return success. > > Reported-by: Ville Syrjala <ville.syrjala@linux.intel.com> > Signed-off-by: Matthew Auld <matthew.auld@intel.com> > --- > lib/i915/intel_memory_region.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/lib/i915/intel_memory_region.c b/lib/i915/intel_memory_region.c > index 144ae12c..e1e210f2 100644 > --- a/lib/i915/intel_memory_region.c > +++ b/lib/i915/intel_memory_region.c > @@ -119,6 +119,13 @@ struct drm_i915_query_memory_regions *gem_get_query_memory_regions(int fd) > memset(&item, 0, sizeof(item)); > item.query_id = DRM_I915_QUERY_MEMORY_REGIONS; > i915_query_items(fd, &item, 1); > + /* > + * Any DRM_I915_QUERY_MEMORY_REGIONS specific errors are encoded in the > + * item.length, even though the ioctl might still return success. > + */ > + igt_assert_f(item.length > 0, > + "DRM_I915_QUERY_MEMORY_REGIONS failed with %d\n", > + item.length); LGTM. Reviewed-by: Ramalingam C <ramalingam.c@intel.com> > > query_info = calloc(1, item.length); > > -- > 2.26.3 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2021-07-26 11:46 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-07-08 12:25 [Intel-gfx] [PATCH i-g-t 1/3] lib/intel_memory_region: verify item.length Matthew Auld 2021-07-08 12:25 ` [Intel-gfx] [PATCH i-g-t 2/3] tests/i915_query: extract query_garbage_items Matthew Auld 2021-07-26 10:13 ` [Intel-gfx] [igt-dev] " Ramalingam C 2021-07-08 12:25 ` [Intel-gfx] [PATCH i-g-t 3/3] tests/i915_query: add some sanity checking around regions query Matthew Auld 2021-07-08 12:25 ` [igt-dev] " Matthew Auld 2021-07-26 11:48 ` [Intel-gfx] " Ramalingam C 2021-07-08 16:27 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/3] lib/intel_memory_region: verify item.length Patchwork 2021-07-09 0:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 2021-07-26 9:32 ` [Intel-gfx] [PATCH i-g-t 1/3] " Ramalingam C 2021-07-26 9:32 ` [igt-dev] " Ramalingam C
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.