diff options
Diffstat (limited to 'drivers/gpu/drm/drm_auth.c')
-rw-r--r-- | drivers/gpu/drm/drm_auth.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_auth.c b/drivers/gpu/drm/drm_auth.c index d9c0f7573905..1669c42c40ed 100644 --- a/drivers/gpu/drm/drm_auth.c +++ b/drivers/gpu/drm/drm_auth.c | |||
@@ -142,6 +142,7 @@ static int drm_new_set_master(struct drm_device *dev, struct drm_file *fpriv) | |||
142 | 142 | ||
143 | lockdep_assert_held_once(&dev->master_mutex); | 143 | lockdep_assert_held_once(&dev->master_mutex); |
144 | 144 | ||
145 | WARN_ON(fpriv->is_master); | ||
145 | old_master = fpriv->master; | 146 | old_master = fpriv->master; |
146 | fpriv->master = drm_master_create(dev); | 147 | fpriv->master = drm_master_create(dev); |
147 | if (!fpriv->master) { | 148 | if (!fpriv->master) { |
@@ -170,6 +171,7 @@ out_err: | |||
170 | /* drop references and restore old master on failure */ | 171 | /* drop references and restore old master on failure */ |
171 | drm_master_put(&fpriv->master); | 172 | drm_master_put(&fpriv->master); |
172 | fpriv->master = old_master; | 173 | fpriv->master = old_master; |
174 | fpriv->is_master = 0; | ||
173 | 175 | ||
174 | return ret; | 176 | return ret; |
175 | } | 177 | } |