Commit 7646423c authored by Lucas De Marchi's avatar Lucas De Marchi
Browse files

drm/xe/configfs: Fix engine class parsing



If mask is NULL, only the engine class should be accepted, so the
pattern string should be completely parsed. This should fix passing e.g.
rcs0 to ctx_restore_post_bb when it's only expecting the engine class.

Reported-by: default avatarJonathan Cavitt <jonathan.cavitt@intel.com>
Closes: https://lore.kernel.org/r/20250922155544.67712-1-jonathan.cavitt@intel.com


Reported-by: default avatarDan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/aNJKnrCQmL9xS9Gv@stanley.mountain


Fixes: e2a9854d ("drm/xe/configfs: Allow to select by class only")
Reviewed-by: default avatarJonathan Cavitt <jonathan.cavitt@intel.com>
Reviewed-by: default avatarRaag Jadav <raag.jadav@intel.com>
Link: https://lore.kernel.org/r/20250924152709.659483-3-lucas.demarchi@intel.com


Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
(cherry picked from commit dd797967)
Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
parent 7bd03e39
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -324,8 +324,8 @@ static const struct engine_info *lookup_engine_info(const char *pattern, u64 *ma
			continue;

		pattern += strlen(engine_info[i].cls);
		if (!mask && !*pattern)
			return &engine_info[i];
		if (!mask)
			return *pattern ? NULL : &engine_info[i];

		if (!strcmp(pattern, "*")) {
			*mask = engine_info[i].mask;