Message ID | 20231123074120.1641630-4-jouni.hogander@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Prepare intel_fb for Xe | expand |
On Thu, Nov 23, 2023 at 09:41:19AM +0200, Jouni Högander wrote: > Lookup_modifier is returning INTEL_PLANE_CAP_TILING_4 on invalid > fb_modifier value. Use lookup_modifier_or_null in > intel_fb_modifier_to_tiling and return I915_TILING_NONE in case > lookup_modifier_or_null returns null. > > Signed-off-by: Jouni Högander <jouni.hogander@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > drivers/gpu/drm/i915/display/intel_fb.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_fb.c b/drivers/gpu/drm/i915/display/intel_fb.c > index a235ec0f192d..f63f56b24b11 100644 > --- a/drivers/gpu/drm/i915/display/intel_fb.c > +++ b/drivers/gpu/drm/i915/display/intel_fb.c > @@ -303,7 +303,14 @@ lookup_format_info(const struct drm_format_info formats[], > > unsigned int intel_fb_modifier_to_tiling(u64 fb_modifier) > { > - u8 tiling_caps = lookup_modifier(fb_modifier)->plane_caps & > + const struct intel_modifier_desc *md; > + u8 tiling_caps; > + > + md = lookup_modifier_or_null(fb_modifier); > + if (!md) > + return I915_TILING_NONE; > + > + tiling_caps = lookup_modifier_or_null(fb_modifier)->plane_caps & > INTEL_PLANE_CAP_TILING_MASK; > > switch (tiling_caps) { > -- > 2.34.1
diff --git a/drivers/gpu/drm/i915/display/intel_fb.c b/drivers/gpu/drm/i915/display/intel_fb.c index a235ec0f192d..f63f56b24b11 100644 --- a/drivers/gpu/drm/i915/display/intel_fb.c +++ b/drivers/gpu/drm/i915/display/intel_fb.c @@ -303,7 +303,14 @@ lookup_format_info(const struct drm_format_info formats[], unsigned int intel_fb_modifier_to_tiling(u64 fb_modifier) { - u8 tiling_caps = lookup_modifier(fb_modifier)->plane_caps & + const struct intel_modifier_desc *md; + u8 tiling_caps; + + md = lookup_modifier_or_null(fb_modifier); + if (!md) + return I915_TILING_NONE; + + tiling_caps = lookup_modifier_or_null(fb_modifier)->plane_caps & INTEL_PLANE_CAP_TILING_MASK; switch (tiling_caps) {
Lookup_modifier is returning INTEL_PLANE_CAP_TILING_4 on invalid fb_modifier value. Use lookup_modifier_or_null in intel_fb_modifier_to_tiling and return I915_TILING_NONE in case lookup_modifier_or_null returns null. Signed-off-by: Jouni Högander <jouni.hogander@intel.com> --- drivers/gpu/drm/i915/display/intel_fb.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)