diff options
Diffstat (limited to 'drivers/gpu/drm/drm_ioctl.c')
-rw-r--r-- | drivers/gpu/drm/drm_ioctl.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c index cb6b54aebd6..4770bd78b30 100644 --- a/drivers/gpu/drm/drm_ioctl.c +++ b/drivers/gpu/drm/drm_ioctl.c @@ -244,7 +244,13 @@ static int drm_set_busid(struct drm_device *dev, struct drm_file *file_priv) if (master->unique != NULL) drm_unset_busid(dev, master); - if (dev->driver->bus && dev->driver->bus->set_busid) { + if (dev->driver->set_busid) { + ret = dev->driver->set_busid(dev, master); + if (ret) { + drm_unset_busid(dev, master); + return ret; + } + } else if (dev->driver->bus && dev->driver->bus->set_busid) { ret = dev->driver->bus->set_busid(dev, master); if (ret) { drm_unset_busid(dev, master); |