CVE-2022-49513: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: cpufreq: governor: Use kobject release() method to free dbs_data The struct dbs_data embeds a struct gov_attr_set and the struct gov_attr_set embeds a kobject. Since every kobject must have a release() method and we can't use kfree() to free it directly, so introduce cpufreq_dbs_data_release() to release the dbs_data via the kobject::release() method. This fixes the calltrace like below: ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x34 WARNING: CPU: 12 PID: 810 at lib/debugobjects.c:505 debug_print_object+0xb8/0x100 Modules linked in: CPU: 12 PID: 810 Comm: sh Not tainted 5.16.0-next-20220120-yocto-standard+ #536 Hardware name: Marvell OcteonTX CN96XX board (DT) pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : debug_print_object+0xb8/0x100 lr : debug_print_object+0xb8/0x100 sp : ffff80001dfcf9a0 x29: ffff80001dfcf9a0 x28: 0000000000000001 x27: ffff0001464f0000 x26: 0000000000000000 x25: ffff8000090e3f00 x24: ffff80000af60210 x23: ffff8000094dfb78 x22: ffff8000090e3f00 x21: ffff0001080b7118 x20: ffff80000aeb2430 x19: ffff800009e8f5e0 x18: 0000000000000000 x17: 0000000000000002 x16: 00004d62e58be040 x15: 013590470523aff8 x14: ffff8000090e1828 x13: 0000000001359047 x12: 00000000f5257d14 x11: 0000000000040591 x10: 0000000066c1ffea x9 : ffff8000080d15e0 x8 : ffff80000a1765a8 x7 : 0000000000000000 x6 : 0000000000000001 x5 : ffff800009e8c000 x4 : ffff800009e8c760 x3 : 0000000000000000 x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff0001474ed040 Call trace: debug_print_object+0xb8/0x100 __debug_check_no_obj_freed+0x1d0/0x25c debug_check_no_obj_freed+0x24/0xa0 kfree+0x11c/0x440 cpufreq_dbs_governor_exit+0xa8/0xac cpufreq_exit_governor+0x44/0x90 cpufreq_set_policy+0x29c/0x570 store_scaling_governor+0x110/0x154 store+0xb0/0xe0 sysfs_kf_write+0x58/0x84 kernfs_fop_write_iter+0x12c/0x1c0 new_sync_write+0xf0/0x18c vfs_write+0x1cc/0x220 ksys_write+0x74/0x100 __arm64_sys_write+0x28/0x3c invoke_syscall.constprop.0+0x58/0xf0 do_el0_svc+0x70/0x170 el0_svc+0x54/0x190 el0t_64_sync_handler+0xa4/0x130 el0t_64_sync+0x1a0/0x1a4 irq event stamp: 189006 hardirqs last enabled at (189005): [<ffff8000080849d0>] finish_task_switch.isra.0+0xe0/0x2c0 hardirqs last disabled at (189006): [<ffff8000090667a4>] el1_dbg+0x24/0xa0 softirqs last enabled at (188966): [<ffff8000080106d0>] __do_softirq+0x4b0/0x6a0 softirqs last disabled at (188957): [<ffff80000804a618>] __irq_exit_rcu+0x108/0x1a4 [ rjw: Because can be freed by the gov_attr_set_put() in cpufreq_dbs_governor_exit() now, it is also necessary to put the invocation of the governor ->exit() callback into the new cpufreq_dbs_data_release() function. ]
AI Analysis
Technical Summary
CVE-2022-49513 is a vulnerability identified in the Linux kernel's CPU frequency scaling subsystem, specifically within the cpufreq governor implementation. The issue stems from improper memory management related to the struct dbs_data, which embeds a struct gov_attr_set, itself embedding a kobject. In the Linux kernel, every kobject requires a proper release() method for safe deallocation, and direct use of kfree() on these objects is unsafe and can lead to use-after-free or double-free conditions. The vulnerability arises because the cpufreq governor was not correctly using the kobject release() method to free dbs_data, leading to potential kernel warnings and instability as evidenced by the provided kernel call trace. The fix introduces a new release method, cpufreq_dbs_data_release(), which correctly handles the release of dbs_data via the kobject's release() callback, ensuring that the governor's exit callback is invoked safely and memory is freed properly. This prevents kernel warnings related to freeing active objects and potential memory corruption. Although the vulnerability does not appear to have known exploits in the wild, the improper memory handling could theoretically lead to kernel crashes or denial of service. The vulnerability affects Linux kernel versions prior to the patch and is relevant to systems running cpufreq governors, which are common in power management for CPUs across many Linux distributions.
Potential Impact
For European organizations, this vulnerability primarily poses a risk of system instability or denial of service on Linux-based systems that utilize CPU frequency scaling governors affected by this bug. This includes servers, desktops, and embedded devices running affected Linux kernels. While there is no evidence of remote code execution or privilege escalation, the kernel warnings and potential memory corruption could cause unexpected system crashes, impacting availability of critical services. Organizations relying on Linux for infrastructure, cloud services, or embedded systems in industrial or IoT contexts could experience disruptions. Given the widespread use of Linux in European data centers, telecom infrastructure, and government systems, unpatched systems may face increased operational risk. However, the lack of known exploits and the technical nature of the vulnerability limit its immediate threat level. Still, the vulnerability underscores the importance of timely kernel updates to maintain system stability and security.
Mitigation Recommendations
European organizations should prioritize updating Linux kernels to versions that include the patch for CVE-2022-49513. Specifically, kernel maintainers and system administrators should ensure that the cpufreq governor code uses the kobject release() method properly by applying the patch introducing cpufreq_dbs_data_release(). For environments where immediate patching is not feasible, monitoring kernel logs for warnings related to debug_print_object or memory freeing errors can help detect potential exploitation or instability. Additionally, organizations should audit their Linux kernel versions and cpufreq governor usage, especially on critical infrastructure and embedded devices. Employing kernel live patching solutions where available can reduce downtime. Finally, testing kernel updates in staging environments before deployment can prevent regressions and ensure compatibility with existing workloads.
Affected Countries
Germany, France, United Kingdom, Netherlands, Italy, Spain, Poland, Sweden, Finland, Belgium
CVE-2022-49513: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: cpufreq: governor: Use kobject release() method to free dbs_data The struct dbs_data embeds a struct gov_attr_set and the struct gov_attr_set embeds a kobject. Since every kobject must have a release() method and we can't use kfree() to free it directly, so introduce cpufreq_dbs_data_release() to release the dbs_data via the kobject::release() method. This fixes the calltrace like below: ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x34 WARNING: CPU: 12 PID: 810 at lib/debugobjects.c:505 debug_print_object+0xb8/0x100 Modules linked in: CPU: 12 PID: 810 Comm: sh Not tainted 5.16.0-next-20220120-yocto-standard+ #536 Hardware name: Marvell OcteonTX CN96XX board (DT) pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : debug_print_object+0xb8/0x100 lr : debug_print_object+0xb8/0x100 sp : ffff80001dfcf9a0 x29: ffff80001dfcf9a0 x28: 0000000000000001 x27: ffff0001464f0000 x26: 0000000000000000 x25: ffff8000090e3f00 x24: ffff80000af60210 x23: ffff8000094dfb78 x22: ffff8000090e3f00 x21: ffff0001080b7118 x20: ffff80000aeb2430 x19: ffff800009e8f5e0 x18: 0000000000000000 x17: 0000000000000002 x16: 00004d62e58be040 x15: 013590470523aff8 x14: ffff8000090e1828 x13: 0000000001359047 x12: 00000000f5257d14 x11: 0000000000040591 x10: 0000000066c1ffea x9 : ffff8000080d15e0 x8 : ffff80000a1765a8 x7 : 0000000000000000 x6 : 0000000000000001 x5 : ffff800009e8c000 x4 : ffff800009e8c760 x3 : 0000000000000000 x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff0001474ed040 Call trace: debug_print_object+0xb8/0x100 __debug_check_no_obj_freed+0x1d0/0x25c debug_check_no_obj_freed+0x24/0xa0 kfree+0x11c/0x440 cpufreq_dbs_governor_exit+0xa8/0xac cpufreq_exit_governor+0x44/0x90 cpufreq_set_policy+0x29c/0x570 store_scaling_governor+0x110/0x154 store+0xb0/0xe0 sysfs_kf_write+0x58/0x84 kernfs_fop_write_iter+0x12c/0x1c0 new_sync_write+0xf0/0x18c vfs_write+0x1cc/0x220 ksys_write+0x74/0x100 __arm64_sys_write+0x28/0x3c invoke_syscall.constprop.0+0x58/0xf0 do_el0_svc+0x70/0x170 el0_svc+0x54/0x190 el0t_64_sync_handler+0xa4/0x130 el0t_64_sync+0x1a0/0x1a4 irq event stamp: 189006 hardirqs last enabled at (189005): [<ffff8000080849d0>] finish_task_switch.isra.0+0xe0/0x2c0 hardirqs last disabled at (189006): [<ffff8000090667a4>] el1_dbg+0x24/0xa0 softirqs last enabled at (188966): [<ffff8000080106d0>] __do_softirq+0x4b0/0x6a0 softirqs last disabled at (188957): [<ffff80000804a618>] __irq_exit_rcu+0x108/0x1a4 [ rjw: Because can be freed by the gov_attr_set_put() in cpufreq_dbs_governor_exit() now, it is also necessary to put the invocation of the governor ->exit() callback into the new cpufreq_dbs_data_release() function. ]
AI-Powered Analysis
Technical Analysis
CVE-2022-49513 is a vulnerability identified in the Linux kernel's CPU frequency scaling subsystem, specifically within the cpufreq governor implementation. The issue stems from improper memory management related to the struct dbs_data, which embeds a struct gov_attr_set, itself embedding a kobject. In the Linux kernel, every kobject requires a proper release() method for safe deallocation, and direct use of kfree() on these objects is unsafe and can lead to use-after-free or double-free conditions. The vulnerability arises because the cpufreq governor was not correctly using the kobject release() method to free dbs_data, leading to potential kernel warnings and instability as evidenced by the provided kernel call trace. The fix introduces a new release method, cpufreq_dbs_data_release(), which correctly handles the release of dbs_data via the kobject's release() callback, ensuring that the governor's exit callback is invoked safely and memory is freed properly. This prevents kernel warnings related to freeing active objects and potential memory corruption. Although the vulnerability does not appear to have known exploits in the wild, the improper memory handling could theoretically lead to kernel crashes or denial of service. The vulnerability affects Linux kernel versions prior to the patch and is relevant to systems running cpufreq governors, which are common in power management for CPUs across many Linux distributions.
Potential Impact
For European organizations, this vulnerability primarily poses a risk of system instability or denial of service on Linux-based systems that utilize CPU frequency scaling governors affected by this bug. This includes servers, desktops, and embedded devices running affected Linux kernels. While there is no evidence of remote code execution or privilege escalation, the kernel warnings and potential memory corruption could cause unexpected system crashes, impacting availability of critical services. Organizations relying on Linux for infrastructure, cloud services, or embedded systems in industrial or IoT contexts could experience disruptions. Given the widespread use of Linux in European data centers, telecom infrastructure, and government systems, unpatched systems may face increased operational risk. However, the lack of known exploits and the technical nature of the vulnerability limit its immediate threat level. Still, the vulnerability underscores the importance of timely kernel updates to maintain system stability and security.
Mitigation Recommendations
European organizations should prioritize updating Linux kernels to versions that include the patch for CVE-2022-49513. Specifically, kernel maintainers and system administrators should ensure that the cpufreq governor code uses the kobject release() method properly by applying the patch introducing cpufreq_dbs_data_release(). For environments where immediate patching is not feasible, monitoring kernel logs for warnings related to debug_print_object or memory freeing errors can help detect potential exploitation or instability. Additionally, organizations should audit their Linux kernel versions and cpufreq governor usage, especially on critical infrastructure and embedded devices. Employing kernel live patching solutions where available can reduce downtime. Finally, testing kernel updates in staging environments before deployment can prevent regressions and ensure compatibility with existing workloads.
For access to advanced analysis and higher rate limits, contact root@offseq.com
Technical Details
- Data Version
- 5.1
- Assigner Short Name
- Linux
- Date Reserved
- 2025-02-26T02:08:31.587Z
- Cisa Enriched
- false
- Cvss Version
- null
- State
- PUBLISHED
Threat ID: 682d982ec4522896dcbe5c83
Added to database: 5/21/2025, 9:09:02 AM
Last enriched: 6/30/2025, 5:12:59 PM
Last updated: 8/14/2025, 2:27:17 AM
Views: 17
Related Threats
CVE-2025-53948: CWE-415 Double Free in Santesoft Sante PACS Server
HighCVE-2025-52584: CWE-122 Heap-based Buffer Overflow in Ashlar-Vellum Cobalt
HighCVE-2025-46269: CWE-122 Heap-based Buffer Overflow in Ashlar-Vellum Cobalt
HighCVE-2025-54862: CWE-79 Improper Neutralization of Input During Web Page Generation (XSS or 'Cross-site Scripting') in Santesoft Sante PACS Server
MediumCVE-2025-54759: CWE-79 Improper Neutralization of Input During Web Page Generation (XSS or 'Cross-site Scripting') in Santesoft Sante PACS Server
MediumActions
Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.
External Links
Need enhanced features?
Contact root@offseq.com for Pro access with improved analysis and higher rate limits.