Fixes for v4.21:
- Fix null pointer dereference on null state pointer. - Fix leaking damage clip when destroying plane state. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEuXvWqAysSYEJGuVH/lWMcqZwE8MFAlws8n8ACgkQ/lWMcqZw E8NREA/+PTs4FCORxvriaiWfP2nIxLqIyehR2qVJbMl0PvAonlqFcJgH+SHNxVd5 sKJYXWaCtA0TV0qEvp7ewcNfVJ9TbyfQG9/q/rAeKRqXYTAxQhfOaTEmMThZ9JCn OoptVvuPR7HAhLusIotxihxaM8Hkkr6Lcy1eZubqCcoA/CBbJ1Mc1RlTz3iCZL/2 C5zz3/jL8K8AY8gk1zkIn4PpgHwslosKQpvSKKyG2WuMupKr+78k2dDyCvS24a2r NOk81Y06ou/8tZn6hCv7c5iYcNRbmNT1LOKgN+b8JL4TNpTrU4CDc1mmOh8uHf0P /0xBLpY2XMsUuxsT6nMigCimejwP4cFz1jYTWpzT1lNVh3hOrBS+R0TS9HLcl56I EYV4LCDXARGd7f+LYop3ffhV5aLUdCiuuhBE0yKZY8endZa0IgOkyzXd4tsvpKHe gapHiDIMWTeSqZrRAcuH4HEawRqGRdOt8kw5+ABOHh7DM5S5sDqUNTBAJSs0UcDV KcAjdiqeaKPztJi/37EaNHeHryil7HD9Xh+oGuYmsupARwqCWsRUZf6YFhk42M+3 fpNO3CH+St2QZEnbHbGjvdzZhMUiPXnyoGv34ACBXHZhFdjm85or9sPghAP8IL1x SDrhlm3K2/9+mSzGKpqotf6y68cKNSnYQfHYqVj4+9aYRq4nxSc= =L3hx -----END PGP SIGNATURE----- Merge tag 'drm-misc-next-fixes-2019-01-02' of git://anongit.freedesktop.org/drm/drm-misc into drm-next Fixes for v4.21: - Fix null pointer dereference on null state pointer. - Fix leaking damage clip when destroying plane state. Signed-off-by: Dave Airlie <airlied@redhat.com> From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/46c4dbcd-dc23-7b46-fda9-16fe33e6ceef@linux.intel.com
This commit is contained in:
commit
9ddf32a8df
|
@ -241,6 +241,7 @@ void __drm_atomic_helper_plane_duplicate_state(struct drm_plane *plane,
|
||||||
|
|
||||||
state->fence = NULL;
|
state->fence = NULL;
|
||||||
state->commit = NULL;
|
state->commit = NULL;
|
||||||
|
state->fb_damage_clips = NULL;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(__drm_atomic_helper_plane_duplicate_state);
|
EXPORT_SYMBOL(__drm_atomic_helper_plane_duplicate_state);
|
||||||
|
|
||||||
|
@ -285,6 +286,8 @@ void __drm_atomic_helper_plane_destroy_state(struct drm_plane_state *state)
|
||||||
|
|
||||||
if (state->commit)
|
if (state->commit)
|
||||||
drm_crtc_commit_put(state->commit);
|
drm_crtc_commit_put(state->commit);
|
||||||
|
|
||||||
|
drm_property_blob_put(state->fb_damage_clips);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(__drm_atomic_helper_plane_destroy_state);
|
EXPORT_SYMBOL(__drm_atomic_helper_plane_destroy_state);
|
||||||
|
|
||||||
|
|
|
@ -178,7 +178,7 @@ int drm_atomic_helper_dirtyfb(struct drm_framebuffer *fb,
|
||||||
state = drm_atomic_state_alloc(fb->dev);
|
state = drm_atomic_state_alloc(fb->dev);
|
||||||
if (!state) {
|
if (!state) {
|
||||||
ret = -ENOMEM;
|
ret = -ENOMEM;
|
||||||
goto out;
|
goto out_drop_locks;
|
||||||
}
|
}
|
||||||
state->acquire_ctx = &ctx;
|
state->acquire_ctx = &ctx;
|
||||||
|
|
||||||
|
@ -238,6 +238,7 @@ out:
|
||||||
kfree(rects);
|
kfree(rects);
|
||||||
drm_atomic_state_put(state);
|
drm_atomic_state_put(state);
|
||||||
|
|
||||||
|
out_drop_locks:
|
||||||
drm_modeset_drop_locks(&ctx);
|
drm_modeset_drop_locks(&ctx);
|
||||||
drm_modeset_acquire_fini(&ctx);
|
drm_modeset_acquire_fini(&ctx);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue