Hi,
On Tue, Oct 5, 2021 at 9:43 AM Ville Syrjälä ville.syrjala@linux.intel.com wrote:
On Mon, Oct 04, 2021 at 09:21:27AM -0700, Douglas Anderson wrote:
In the commit bac9c2948224 ("drm/edid: Break out reading block 0 of the EDID") I broke out reading the base block of the EDID to its own function. Unfortunately, when I did that I messed up the handling when drm_edid_is_zero() indicated that we had an EDID that was all 0x00 or when we went through 4 loops and didn't get a valid EDID. Specifically I needed to pass the broken EDID to connector_bad_edid() but now I was passing an error-pointer.
Let's re-jigger things so we can pass the bad EDID in properly.
Fixes: bac9c2948224 ("drm/edid: Break out reading block 0 of the EDID") Reported-by: kernel test robot oliver.sang@intel.com Reported-by: Geert Uytterhoeven geert@linux-m68k.org Signed-off-by: Douglas Anderson dianders@chromium.org
A bit of historical fallout zone this part of the code. So not the easiest thing to read in general. But looks like what you have here should work.
Reviewed-by: Ville Syrjälä ville.syrjala@linux.intel.com
Thanks! Pushed to drm-misc/drm-misc-next:
e7bd95a7ed4e drm/edid: Fix crash with zero/invalid EDID