diff options
author | Nikhil Mahale <nmahale@nvidia.com> | 2017-08-08 23:53:01 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2017-08-14 09:30:33 -0400 |
commit | 491ab4700d1b64f5cf2f9055e01613a923df5fab (patch) | |
tree | f88ffa570a5f2bcc05c5557e08d250851514c889 | |
parent | 0fa375e6bc9023211eead30a6a79963c45a563da (diff) |
drm: Fix framebuffer leak
Do not leak framebuffer if client provided crtc id found invalid.
Signed-off-by: Nikhil Mahale <nmahale@nvidia.com>
Cc: stable@vger.kernel.org
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/1502250781-5779-1-git-send-email-nmahale@nvidia.com
-rw-r--r-- | drivers/gpu/drm/drm_plane.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_plane.c b/drivers/gpu/drm/drm_plane.c index 5dc8c4350602..e40c12fabbde 100644 --- a/drivers/gpu/drm/drm_plane.c +++ b/drivers/gpu/drm/drm_plane.c | |||
@@ -601,6 +601,7 @@ int drm_mode_setplane(struct drm_device *dev, void *data, | |||
601 | 601 | ||
602 | crtc = drm_crtc_find(dev, plane_req->crtc_id); | 602 | crtc = drm_crtc_find(dev, plane_req->crtc_id); |
603 | if (!crtc) { | 603 | if (!crtc) { |
604 | drm_framebuffer_put(fb); | ||
604 | DRM_DEBUG_KMS("Unknown crtc ID %d\n", | 605 | DRM_DEBUG_KMS("Unknown crtc ID %d\n", |
605 | plane_req->crtc_id); | 606 | plane_req->crtc_id); |
606 | return -ENOENT; | 607 | return -ENOENT; |