diff options
Diffstat (limited to 'drivers/gpu/drm/drm_usb.c')
-rw-r--r-- | drivers/gpu/drm/drm_usb.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_usb.c b/drivers/gpu/drm/drm_usb.c index 34a156f0c336..87664723b9ce 100644 --- a/drivers/gpu/drm/drm_usb.c +++ b/drivers/gpu/drm/drm_usb.c | |||
@@ -33,6 +33,12 @@ int drm_get_usb_dev(struct usb_interface *interface, | |||
33 | if (ret) | 33 | if (ret) |
34 | goto err_g1; | 34 | goto err_g1; |
35 | 35 | ||
36 | if (drm_core_check_feature(dev, DRIVER_RENDER) && drm_rnodes) { | ||
37 | ret = drm_get_minor(dev, &dev->render, DRM_MINOR_RENDER); | ||
38 | if (ret) | ||
39 | goto err_g11; | ||
40 | } | ||
41 | |||
36 | ret = drm_get_minor(dev, &dev->primary, DRM_MINOR_LEGACY); | 42 | ret = drm_get_minor(dev, &dev->primary, DRM_MINOR_LEGACY); |
37 | if (ret) | 43 | if (ret) |
38 | goto err_g2; | 44 | goto err_g2; |
@@ -62,6 +68,9 @@ int drm_get_usb_dev(struct usb_interface *interface, | |||
62 | err_g3: | 68 | err_g3: |
63 | drm_put_minor(&dev->primary); | 69 | drm_put_minor(&dev->primary); |
64 | err_g2: | 70 | err_g2: |
71 | if (dev->render) | ||
72 | drm_put_minor(&dev->render); | ||
73 | err_g11: | ||
65 | drm_put_minor(&dev->control); | 74 | drm_put_minor(&dev->control); |
66 | err_g1: | 75 | err_g1: |
67 | kfree(dev); | 76 | kfree(dev); |