Patch "drm/atomic: Unref duplicated drm_atomic_state in drm_atomic_helper_resume()" has been added to the 4.13-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
drm/atomic: Unref duplicated drm_atomic_state in drm_atomic_helper_resume()
to the 4.13-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
drm-atomic-unref-duplicated-drm_atomic_state-in-drm_atomic_helper_resume.patch
and it can be found in the queue-4.13 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
78279127253a6c36ed8829eb2b7bc28ef48d9717Mon Sep 17 00:00:00 2001
From: Jeffy Chen <[email protected]>
Date: Mon, 9 Oct 2017 14:46:41 +0800
Subject: drm/atomic: Unref duplicated drm_atomic_state in drm_atomic_helper_resume()
From: Jeffy Chen <[email protected]>
commit 78279127253a6c36ed8829eb2b7bc28ef48d9717 upstream.
Kmemleak reported memory leak after suspend and resume:
unreferenced object 0xffffffc0e31d8880 (size 128):
comm "bash", pid 181, jiffies 4294763583 (age 24.694s) hex dump (first 32 bytes):
01 00 00 00 00 00 00 00 00 20 a2 eb c0 ff ff ff ......... ......
01 00 00 00 00 00 00 00 80 87 1d e3 c0 ff ff ff ................
backtrace:
[<ffffffc00034bb64>] __save_stack_trace+0x48/0x6c
[<ffffffc00034c244>] create_object+0x138/0x254
[<ffffffc0009dd218>] kmemleak_alloc+0x58/0x8c
[<ffffffc000346de4>] kmem_cache_alloc_trace+0x188/0x254
[<ffffffc0005af4c0>] drm_atomic_state_alloc+0x3c/0x88
[<ffffffc000591f0c>] drm_atomic_helper_duplicate_state+0x28/0x158
[<ffffffc000592098>] drm_atomic_helper_suspend+0x5c/0xf0Problem here is that we are duplicating the drm_atomic_state in drm_atomic_helper_suspend(), but not unreference it in the resume path.
--- drivers/gpu/drm/drm_atomic_helper.c | 1 + 1 file changed, 1 insertion(+)
drivers/gpu/drm/drm_atomic_helper.c +1 -0
@@ -2756,6 +2756,7 @@ out:drm_modeset_backoff (&ctx); } +drm_atomic_state_put (state);drm_modeset_drop_locks (&ctx);drm_modeset_acquire_fini (&ctx);
Patches currently in stable-queue which might be from [email protected] are
queue-4.13/drm-atomic-unref-duplicated-drm_atomic_state-in-drm_atomic_helper_resume.patch