From: Lucas De Marchi Date: Fri, 30 Jul 2021 19:11:15 +0000 (-0700) Subject: drm/i915/xehp: Fix missing sentinel on mcr_ranges_xehp X-Git-Tag: microblaze-v5.16~33^2~16^2~25 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=3989de0ef562a9168782258f3c6d2f517d82bbed;p=linux-2.6-microblaze.git drm/i915/xehp: Fix missing sentinel on mcr_ranges_xehp There's a missing sentinel since we are not using ARRAY_SIZE(), but rather checking that the .start is 0 to stop the iteration in mcr_range(). BUG: KASAN: global-out-of-bounds in mcr_range.isra.0+0x69/0xa0 [i915] Read of size 4 at addr ffffffffa0889928 by task modprobe/3881 Fixes: d8905ba705ab ("drm/i915/xehp: Define multicast register ranges") Signed-off-by: Lucas De Marchi Reviewed-by: Matt Roper Link: https://patchwork.freedesktop.org/patch/msgid/20210730191115.2514581-1-lucas.demarchi@intel.com --- diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c b/drivers/gpu/drm/i915/gt/intel_workarounds.c index 9173df59821a..053fa7251cd0 100644 --- a/drivers/gpu/drm/i915/gt/intel_workarounds.c +++ b/drivers/gpu/drm/i915/gt/intel_workarounds.c @@ -2000,6 +2000,7 @@ static const struct mcr_range mcr_ranges_xehp[] = { { .start = 0xdc00, .end = 0xffff }, { .start = 0x17000, .end = 0x17fff }, { .start = 0x24a00, .end = 0x24a7f }, + {}, }; static bool mcr_range(struct drm_i915_private *i915, u32 offset)