In the Linux kernel, the following vulnerability has been resolved:
drm/atmel-hlcdc: fix memory leak from the atomic_destroy_state callback
After several commits, the slab memory increases. Some drm_crtc_commit
objects are not freed. The atomic_destroy_state callback only put the
framebuffer. Use the __drm_atomic_helper_plane_destroy_state() function
to put all the objects that are no longer needed.
It has been seen after hours of usage of a graphics application or using
kmemleak:
unreferenced object 0xc63a6580 (size 64):
comm "egt_basic", pid 171, jiffies 4294940784
hex dump (first 32 bytes):
40 50 34 c5 01 00 00 00 ff ff ff ff 8c 65 3a c6 @P4..........e:.
8c 65 3a c6 ff ff ff ff 98 65 3a c6 98 65 3a c6 .e:......e:..e:.
backtrace (crc c25aa925):
kmemleak_alloc+0x34/0x3c
__kmalloc_cache_noprof+0x150/0x1a4
drm_atomic_helper_setup_commit+0x1e8/0x7bc
drm_atomic_helper_commit+0x3c/0x15c
drm_atomic_commit+0xc0/0xf4
drm_atomic_helper_set_config+0x84/0xb8
drm_mode_setcrtc+0x32c/0x810
drm_ioctl+0x20c/0x488
sys_ioctl+0x14c/0xc20
ret_fast_syscall+0x0/0x54
A memory leak vulnerability exists in the Linux kernel's Atmel HLCDC DRM driver where drm_crtc_commit objects are not properly freed during atomic state destruction. The fix involves using the proper helper function to release all associated objects instead of only the framebuffer.
يحتوي مشغل Atmel HLCDC DRM في نواة لينكس على تسرب ذاكرة حيث لا يتم تحرير كائنات drm_crtc_commit بشكل صحيح أثناء تدمير الحالة الذرية. يؤدي هذا إلى تراكم الكائنات غير المرجعية وزيادة استهلاك الذاكرة بمرور الوقت.
A memory leak in the Linux kernel's Atmel HLCDC graphics driver causes drm_crtc_commit objects to accumulate over time, potentially degrading system performance. The vulnerability is resolved by implementing proper cleanup of all atomic state objects using the correct helper function.
Update the Linux kernel to the patched version that implements __drm_atomic_helper_plane_destroy_state() in the atomic_destroy_state callback for the Atmel HLCDC driver to properly release all drm_crtc_commit objects and associated resources.
قم بتحديث نواة لينكس إلى الإصدار المصحح الذي ينفذ __drm_atomic_helper_plane_destroy_state() في رد نداء atomic_destroy_state لمشغل Atmel HLCDC لتحرير جميع كائنات drm_crtc_commit والموارد المرتبطة بها بشكل صحيح.