Re: [PATCH v2] drm/i915: Fix potential spectre vulnerability

From: Tvrtko Ursulin
Date: Mon Nov 06 2023 - 05:15:32 EST



On 06/11/2023 09:57, Andi Shyti wrote:
Hi Kunwu,

On Fri, Nov 03, 2023 at 10:32:57AM +0800, Kunwu Chan wrote:
Fix smatch warning:
drivers/gpu/drm/i915/gem/i915_gem_context.c:847 set_proto_ctx_sseu()
warn: potential spectre issue 'pc->user_engines' [r] (local cap)

Fixes: d4433c7600f7 ("drm/i915/gem: Use the proto-context to handle create parameters (v5)")
Cc: <stable@xxxxxxxxxxxxxxx> # v5.15+
Signed-off-by: Kunwu Chan <chentao@xxxxxxxxxx>
Suggested-by: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxxxxxxx>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxxxxxxx>
Link: https://lore.kernel.org/all/20231102101642.52988-1-chentao@xxxxxxxxxx
---
drivers/gpu/drm/i915/gem/i915_gem_context.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c
index 9a9ff84c90d7..e38f06a6e56e 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c
@@ -844,6 +844,7 @@ static int set_proto_ctx_sseu(struct drm_i915_file_private *fpriv,
if (idx >= pc->num_user_engines)
return -EINVAL;
+ idx = array_index_nospec(idx, pc->num_user_engines);

you ignored my comment, though.

Sorry it was me, I considered it fine as is given it is the same pattern as elsewhere in the file. I've merged the patch btw.

Regards,

Tvrtko


Andi

pe = &pc->user_engines[idx];
/* Only render engine supports RPCS configuration. */
--
2.34.1