On Mon, Apr 14, 2014 at 09:26:14AM +0300, Tomi Valkeinen wrote:
Hi,
On 12/04/14 00:35, Daniel Vetter wrote:
Dave accidentally merged the wrong version of the patch in
commit fd3c02531461924853db65f2664db361b53a70d3 Author: Daniel Vetter daniel.vetter@ffwll.ch Date: Wed Dec 11 11:34:26 2013 +0100
drm/omap: call drm_put_dev directly in ->remove
which did not include the fix from Rob's review: omapdrm is split into the drm driver and the dmm driver (yeah, I've complained about that almost-impossible-to-spot difference, too). We need to unregister the dmm driver in the pdev_remove hook.
Cc: Dave Airlie airlied@redhat.com Cc: Rob Clark robdclark@gmail.com Signed-off-by: Daniel Vetter daniel.vetter@ffwll.ch
drivers/gpu/drm/omapdrm/omap_drv.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c b/drivers/gpu/drm/omapdrm/omap_drv.c index bf39fcc49e0f..89557989737d 100644 --- a/drivers/gpu/drm/omapdrm/omap_drv.c +++ b/drivers/gpu/drm/omapdrm/omap_drv.c @@ -699,6 +699,8 @@ static int pdev_remove(struct platform_device *device) omap_disconnect_dssdevs(); omap_crtc_pre_uninit();
- platform_driver_unregister(&omap_dmm_driver);
- drm_put_dev(platform_get_drvdata(device)); return 0;
}
Your patch does fix the "drm/omap: call drm_put_dev directly in ->remove" patch, but I think the unregistering is not right if done in pdev_remove.
I sent this patch a few weeks ago:
http://www.spinics.net/lists/dri-devel/msg56464.html
It unregisters the dmm driver at the module exit function, which is the proper place for it as the dmm driver is registered in the module init function.
I don't mind how this is getting fixed, I just don't like when regression caused by my patches are left lingering too long ;-)
Have you merged your patch for 3.14-rc already so that I can drop this one here?
Thanks, Daniel