summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_drv.c
diff options
context:
space:
mode:
authorLucas De Marchi <lucas.demarchi@intel.com>2021-02-12 20:27:53 -0800
committerLucas De Marchi <lucas.demarchi@intel.com>2021-02-13 12:52:55 -0800
commitec3e00b4ee2768a457d9b6278c0dfac05473abd1 (patch)
treedf7015903e25e33059bc144fb485ba5a279e1137 /drivers/gpu/drm/i915/i915_drv.c
parent29b6f88d60ddcaf813d1adc757d84fad4a6153c6 (diff)
downloadlinux-stable-ec3e00b4ee2768a457d9b6278c0dfac05473abd1.tar.gz
linux-stable-ec3e00b4ee2768a457d9b6278c0dfac05473abd1.tar.bz2
linux-stable-ec3e00b4ee2768a457d9b6278c0dfac05473abd1.zip
drm/i915: stop registering if drm_dev_register() fails
If drm_dev_register() fails there is no reason to continue registering the driver and initializing. Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Link: https://patchwork.freedesktop.org/patch/msgid/20210213042756.953007-1-lucas.demarchi@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.c')
-rw-r--r--drivers/gpu/drm/i915/i915_drv.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 57d693eb24f3..67e4d91df0c0 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -664,17 +664,19 @@ static void i915_driver_register(struct drm_i915_private *dev_priv)
intel_vgpu_register(dev_priv);
/* Reveal our presence to userspace */
- if (drm_dev_register(dev, 0) == 0) {
- i915_debugfs_register(dev_priv);
- if (HAS_DISPLAY(dev_priv))
- intel_display_debugfs_register(dev_priv);
- i915_setup_sysfs(dev_priv);
-
- /* Depends on sysfs having been initialized */
- i915_perf_register(dev_priv);
- } else
+ if (drm_dev_register(dev, 0)) {
drm_err(&dev_priv->drm,
"Failed to register driver for userspace access!\n");
+ return;
+ }
+
+ i915_debugfs_register(dev_priv);
+ if (HAS_DISPLAY(dev_priv))
+ intel_display_debugfs_register(dev_priv);
+ i915_setup_sysfs(dev_priv);
+
+ /* Depends on sysfs having been initialized */
+ i915_perf_register(dev_priv);
if (HAS_DISPLAY(dev_priv)) {
/* Must be done after probing outputs */