CVE-2024-56695
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
drm/amdkfd: Use dynamic allocation for CU occupancy array in 'kfd_get_cu_occupancy()'
The kfd_get_cu_occupancy function previously declared a large
cu_occupancy array as a local variable, which could lead to stack
overflows due to excessive stack usage. This commit replaces the static
array allocation with dynamic memory allocation using kcalloc,
thereby reducing the stack size.
This change avoids the risk of stack overflows in kernel space, in
scenarios where AMDGPU_MAX_QUEUES is large. The allocated memory is
freed using kfree before the function returns to prevent memory
leaks.
Fixes the below with gcc W=1: drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c: In function ‘kfd_get_cu_occupancy’: drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c:322:1: warning: the frame size of 1056 bytes is larger than 1024 bytes [-Wframe-larger-than=] 322 | } | ^
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 6ae9e1aba97e4cdaa31a0bfdc07497ad0e915c84 < 6d9f07196389f35a3afebcf1a12c1425725caddd | affected |
| Linux | Linux | 6ae9e1aba97e4cdaa31a0bfdc07497ad0e915c84 < 922f0e00017b09d9d47e3efac008c8b20ed546a0 | affected |
| Linux | Linux | 6.12 | affected |
| Linux | Linux | 0 < 6.12 | unaffected |
| Linux | Linux | 6.12.2 <= 6.12.* | unaffected |
| Linux | Linux | 6.13 <= * | unaffected |
Weaknesses
ADP Enrichment
CISA ADP Vulnrichment
- SSVC:
- Exploitation: none
- Automatable: no
- Technical Impact: total
References
- https://git.kernel.org/stable/c/6d9f07196389f35a3afebcf1a12c1425725caddd
- https://git.kernel.org/stable/c/922f0e00017b09d9d47e3efac008c8b20ed546a0
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.