drm: Avoid NULL dereference of drm_device.dev
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 30 Dec 2016 14:16:39 +0000 (14:16 +0000)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 30 Dec 2016 14:29:44 +0000 (15:29 +0100)
For a virtual device, drm_device.dev is NULL, so becareful not to
dereference it unconditionally in core code such as drm_dev_register().

Fixes: 75f6dfe3e652 ("drm: Deduplicate driver initialization message")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Gabriel Krisman Bertazi <krisman@collabora.co.uk>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20161230141639.10487-1-chris@chris-wilson.co.uk
drivers/gpu/drm/drm_drv.c

index 135c746dc9c7fa24e86396c7d8304004c1940dce..1b11ab628da7039f0eb0c011ff748d81b9918155 100644 (file)
@@ -762,7 +762,8 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags)
 
        DRM_INFO("Initialized %s %d.%d.%d %s for %s on minor %d\n",
                 driver->name, driver->major, driver->minor,
-                driver->patchlevel, driver->date, dev_name(dev->dev),
+                driver->patchlevel, driver->date,
+                dev->dev ? dev_name(dev->dev) : "virtual device",
                 dev->primary->index);
 
        goto out_unlock;