tracing/histograms: Fix memory leak problem
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA and Red Hat. Impact type from CWE-401.
Summary
In the Linux kernel, the following vulnerability has been resolved: tracing/histograms: Fix memory leak problem This reverts commit 46bbe5c671e06f070428b9be142cc4ee5cedebac. As commit 46bbe5c671e0 ("tracing: fix double free") said, the "double free" problem reported by clang static analyzer is: > In parse_var_defs() if there is a problem allocating > var_defs.expr, the earlier var_defs.name is freed. > This free is duplicated by free_var_defs() which frees > the rest of the list. However, if there is a problem allocating N-th var_defs.expr: + in parse_var_defs(), the freed 'earlier var_defs.name' is actually the N-th var_defs.name; + then in free_var_defs(), the names from 0th to (N-1)-th are freed; IF ALLOCATING PROBLEM HAPPENED HERE!!! -+ \ | 0th 1th (N-1)-th N-th V +-------------+-------------+-----+-------------+----------- var_defs: | name | expr | name | expr | ... | name | expr | name | /// +-------------+-------------+-----+-------------+----------- These two frees don't act on same name, so there was no "double free" problem before. Conversely, after that commit, we get a "memory leak" problem because the above "N-th var_defs.name" is not freed. If enable CONFIG_DEBUG_KMEMLEAK and inject a fault at where the N-th var_defs.expr allocated, then execute on shell like: $ echo 'hist:key=call_site:val=$v1,$v2:v1=bytes_req,v2=bytes_alloc' > \ /sys/kernel/debug/tracing/events/kmem/kmalloc/trigger Then kmemleak reports: unreferenced object 0xffff8fb100ef3518 (size 8): comm "bash", pid 196, jiffies 4295681690 (age 28.538s) hex dump (first 8 bytes): 76 31 00 00 b1 8f ff ff v1...... backtrace: [<0000000038fe4895>] kstrdup+0x2d/0x60 [<00000000c99c049a>] event_hist_trigger_parse+0x206f/0x20e0 [<00000000ae70d2cc>] trigger_process_regex+0xc0/0x110 [<0000000066737a4c>] event_trigger_write+0x75/0xd0 [<000000007341e40c>] vfs_write+0xbb/0x2a0 [<0000000087fde4c2>] ksys_write+0x59/0xd0 [<00000000581e9cdf>] do_syscall_64+0x3a/0x80 [<00000000cf3b065c>] entry_SYSCALL_64_after_hwframe+0x46/0xb0
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Linux | Linux | 4.19.149 to before 4.19.253; 5.4.69 to before 5.4.207; 5.8.13 to before 5.9 | 4.19.253, 5.4.207, 5.9 | Patch available | CNA |
| Linux | Linux | 5.9 and later | 4.19.253, 5.4.207, 5.10.132, 5.15.56, 5.18.13, 5.19 | Patch available | CNA |
- Linux VendorLinux Affected 4.19.149 to before 4.19.253; 5.4.69 to before 5.4.207; 5.8.13 to before 5.9 Fixed in 4.19.253, 5.4.207, 5.9 Patch available CNA
- Linux VendorLinux Affected 5.9 and later Fixed in 4.19.253, 5.4.207, 5.10.132, 5.15.56, 5.18.13, 5.19 Patch available CNA
CPE configurations NVD · 7
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.19.149 to before 4.19.253; 5.4.69 to before 5.4.207; 5.8.13 to before 5.10.132; 5.11 to before 5.15.56; 5.16 to before 5.18.13 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:5.19:rc1:*:*:*:*:*:* | 5.19 rc1 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:5.19:rc2:*:*:*:*:*:* | 5.19 rc2 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:5.19:rc3:*:*:*:*:*:* | 5.19 rc3 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:5.19:rc4:*:*:*:*:*:* | 5.19 rc4 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:5.19:rc5:*:*:*:*:*:* | 5.19 rc5 | Vulnerable | Linux |
| cpe:2.3:o:linux:linux_kernel:5.19:rc6:*:*:*:*:*:* | 5.19 rc6 | Vulnerable | Linux |
- cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* Versions 4.19.149 to before 4.19.253; 5.4.69 to before 5.4.207; 5.8.13 to before 5.10.132; 5.11 to before 5.15.56; 5.16 to before 5.18.13 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:5.19:rc1:*:*:*:*:*:* Versions 5.19 rc1 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:5.19:rc2:*:*:*:*:*:* Versions 5.19 rc2 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:5.19:rc3:*:*:*:*:*:* Versions 5.19 rc3 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:5.19:rc4:*:*:*:*:*:* Versions 5.19 rc4 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:5.19:rc5:*:*:*:*:*:* Versions 5.19 rc5 Vulnerable ·Linux
- cpe:2.3:o:linux:linux_kernel:5.19:rc6:*:*:*:*:*:* Versions 5.19 rc6 Vulnerable ·Linux
Remediation
- Fix · CNA Linux (Linux) Fixed in 4.19.253, 5.4.207, 5.9
- Fix · CNA Linux (Linux) Fixed in 4.19.253, 5.4.207, 5.10.132, 5.15.56, 5.18.13, 5.19
Red Hat 1 advisory
- RHSA-2025:20518 Released 2025-11-11 · Red Hat rating Moderatekernel security update
- Red Hat Enterprise Linux AppStream (v. 9) kernel-64k-debug-devel-5.14.0-611.5.1.el9_7, kernel-64k-debug-devel-matched-5.14.0-611.5.1.el9_7, kernel-64k-devel-5.14.0-611.5.1.el9_7 +12
- Red Hat Enterprise Linux BaseOS (v. 9) kernel-5.14.0-611.5.1.el9_7, kernel-64k-5.14.0-611.5.1.el9_7, kernel-64k-core-5.14.0-611.5.1.el9_7 +28
- Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) kernel-tools-libs-devel-5.14.0-611.5.1.el9_7, libperf-5.14.0-611.5.1.el9_7
- Red Hat Enterprise Linux Real Time (v. 9) kernel-rt-5.14.0-611.5.1.el9_7, kernel-rt-64k-5.14.0-611.5.1.el9_7, kernel-rt-64k-core-5.14.0-611.5.1.el9_7 +21
- Red Hat Enterprise Linux Real Time for NFV (v. 9) kernel-rt-5.14.0-611.5.1.el9_7, kernel-rt-core-5.14.0-611.5.1.el9_7, kernel-rt-debug-5.14.0-611.5.1.el9_7 +9
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Enterprise Linux AppStream (v. 9) | Fixed | RHSA-2025:20518 |
| Red Hat Enterprise Linux BaseOS (v. 9) | Fixed | RHSA-2025:20518 |
| Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) | Fixed | RHSA-2025:20518 |
| Red Hat Enterprise Linux Real Time (v. 9) | Fixed | RHSA-2025:20518 |
| Red Hat Enterprise Linux Real Time for NFV (v. 9) | Fixed | RHSA-2025:20518 |
Not affected: 4 products
- Red Hat Enterprise Linux 10
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
Timeline
- 2026-10-02 Threatist record created from CVE-2022-49648
- 2026-10-03 Alias added: GHSA-7rcj-vmjp-fwmv
- 2026-10-29 Affected versions changed · Red Hat
References
Patch 6
- https://git.kernel.org/stable/c/eb622d5580b9e2ff694f62da6410618bd73853cb
- https://git.kernel.org/stable/c/ecc6dec12c33aa92c086cd702af9f544ddaf3c75
- https://git.kernel.org/stable/c/78a1400c42ee11197eb1f0f85ba51df9a4fdfff0
- https://git.kernel.org/stable/c/22eeff55679d9e7c0f768c79bfbd83e2f8142d89
- https://git.kernel.org/stable/c/4d453eb5e1eec89971aa5b3262857ee26cfdffd3
- https://git.kernel.org/stable/c/7edc3945bdce9c39198a10d6129377a5c53559c2
More Linux Kernel vulnerabilities
- TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
- TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
- TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
- TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
- TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
- TI-2021-05514 Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACE KEVCVSS 3.1HIGH 8.3
Sources
- CVE-2022-49648 · CVE Program
- CVE-2022-49648 · NVD
- FIRST EPSS
- GHSA-7rcj-vmjp-fwmv · GitHub Advisory Database · CC BY 4.0
- CVE-2022-49648 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences