[PATCH] drm: mxsfb: Fix NULL pointer dereference crash on unload

Marek Vasut marex at denx.de
Wed Sep 8 21:19:04 UTC 2021


On 9/8/21 8:24 PM, Daniel Vetter wrote:
> On Tue, Sep 07, 2021 at 04:49:00AM +0200, Marek Vasut wrote:
>> The mxsfb->crtc.funcs may already be NULL when unloading the driver,
>> in which case calling mxsfb_irq_disable() via drm_irq_uninstall() from
>> mxsfb_unload() leads to NULL pointer dereference.
>>
>> Since all we care about is masking the IRQ and mxsfb->base is still
>> valid, just use that to clear and mask the IRQ.
>>
>> Fixes: ae1ed00932819 ("drm: mxsfb: Stop using DRM simple display pipeline helper")
>> Signed-off-by: Marek Vasut <marex at denx.de>
>> Cc: Daniel Abrecht <public at danielabrecht.ch>
>> Cc: Emil Velikov <emil.l.velikov at gmail.com>
>> Cc: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
>> Cc: Sam Ravnborg <sam at ravnborg.org>
>> Cc: Stefan Agner <stefan at agner.ch>
> 
> You probably want a drm_atomic_helper_shutdown instead of trying to do all
> that manually. We've also added a bunch more devm and drmm_ functions to
> automate the cleanup a lot more here, e.g. your drm_mode_config_cleanup is
> in the wrong place.
> 
> Also I'm confused because I'm not even seeing this function anywhere in
> upstream.

It is still here:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/drivers/gpu/drm/mxsfb/mxsfb_drv.c#n171
as of:
999569d59a0aa ("Add linux-next specific files for 20210908")

Is there some other tree I should be looking at ?


More information about the dri-devel mailing list