[igt-dev] [PATCH v2 i-g-t] tests/i915_query: fix cache type iteration

Nirmoy Das nirmoy.das at intel.com
Tue Jul 12 13:50:24 UTC 2022


Iterate over each cache types otherwise this will get
stuck in infinite loop if the value starts with 0 1st bit.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/6249
Reviewed-by: Andrzej Hajda <andrzej.hajda at intel.com>
Suggested-by: Chris Wilson <chris.p.wilson at intel.com>
Signed-off-by: Nirmoy Das <nirmoy.das at intel.com>
---
 tests/i915/i915_query.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tests/i915/i915_query.c b/tests/i915/i915_query.c
index b33ffecff..8befd48bb 100644
--- a/tests/i915/i915_query.c
+++ b/tests/i915/i915_query.c
@@ -1348,14 +1348,14 @@ static void query_parse_and_validate_hwconfig_table(int i915)
 			if (!value)
 				igt_info("-\n");
 
-			j = 0;
-			while (value) {
+			for (j = 0; j < __INTEL_HWCONFIG_CACHE_TYPE_LIMIT; j++) {
 				if (value & BIT(j)) {
 					value &= ~BIT(j);
-					igt_assert(j < __INTEL_HWCONFIG_CACHE_TYPE_LIMIT);
 					igt_info("%s%s", hwconfig_cachetypes[j], value ? ", " : "\n");
 				}
 			}
+
+			igt_assert(!value);
 			break;
 
 		default:
-- 
2.35.1

Intel Deutschland GmbH
Registered Address: Am Campeon 10, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de <http://www.intel.de>
Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva  
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928



More information about the igt-dev mailing list