drm/i915/hti: avoid theoretically possible negative shift
authorJani Nikula <jani.nikula@intel.com>
Tue, 22 Nov 2022 12:09:48 +0000 (14:09 +0200)
committerJani Nikula <jani.nikula@intel.com>
Wed, 23 Nov 2022 09:16:58 +0000 (11:16 +0200)
If phy is PHY_NONE, the shift to register bits becomes negative. Check
and warn about this.

Reported-by: coverity-bot <keescook@chromium.org>
References: https://lore.kernel.org/r/202211180848.D39006C@keescook
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20221122120948.3436180-1-jani.nikula@intel.com
drivers/gpu/drm/i915/display/intel_hti.c

index 12a1f4ce1a77c158c0ef0bff6af6b17bacc606f8..c518efebdf779fe76741b091007cd2a7920aa873 100644 (file)
@@ -21,6 +21,9 @@ void intel_hti_init(struct drm_i915_private *i915)
 
 bool intel_hti_uses_phy(struct drm_i915_private *i915, enum phy phy)
 {
+       if (drm_WARN_ON(&i915->drm, phy == PHY_NONE))
+               return false;
+
        return i915->display.hti.state & HDPORT_ENABLED &&
                i915->display.hti.state & HDPORT_DDI_USED(phy);
 }