projects
/
platform
/
kernel
/
linux-rpi.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
b4e798c
)
drm/lease: fix WARNING in idr_destroy
author
Qiujun Huang
<hqjagain@gmail.com>
Wed, 18 Mar 2020 07:53:50 +0000
(15:53 +0800)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Wed, 25 Mar 2020 07:25:56 +0000
(08:25 +0100)
commit
b216a8e7908cd750550c0480cf7d2b3a37f06954
upstream.
drm_lease_create takes ownership of leases. And leases will be released
by drm_master_put.
drm_master_put
->drm_master_destroy
->idr_destroy
So we needn't call idr_destroy again.
Reported-and-tested-by: syzbot+05835159fe322770fe3d@syzkaller.appspotmail.com
Signed-off-by: Qiujun Huang <hqjagain@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link:
https://patchwork.freedesktop.org/patch/msgid/1584518030-4173-1-git-send-email-hqjagain@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/drm_lease.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/drm_lease.c
b/drivers/gpu/drm/drm_lease.c
index
b481caf
..
825abe3
100644
(file)
--- a/
drivers/gpu/drm/drm_lease.c
+++ b/
drivers/gpu/drm/drm_lease.c
@@
-542,10
+542,12
@@
int drm_mode_create_lease_ioctl(struct drm_device *dev,
}
DRM_DEBUG_LEASE("Creating lease\n");
+ /* lessee will take the ownership of leases */
lessee = drm_lease_create(lessor, &leases);
if (IS_ERR(lessee)) {
ret = PTR_ERR(lessee);
+ idr_destroy(&leases);
goto out_leases;
}
@@
-580,7
+582,6
@@
out_lessee:
out_leases:
put_unused_fd(fd);
- idr_destroy(&leases);
DRM_DEBUG_LEASE("drm_mode_create_lease_ioctl failed: %d\n", ret);
return ret;