CVE-2021-47246: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Fix page reclaim for dead peer hairpin When adding a hairpin flow, a firmware-side send queue is created for the peer net device, which claims some host memory pages for its internal ring buffer. If the peer net device is removed/unbound before the hairpin flow is deleted, then the send queue is not destroyed which leads to a stack trace on pci device remove: [ 748.005230] mlx5_core 0000:08:00.2: wait_func:1094:(pid 12985): MANAGE_PAGES(0x108) timeout. Will cause a leak of a command resource [ 748.005231] mlx5_core 0000:08:00.2: reclaim_pages:514:(pid 12985): failed reclaiming pages: err -110 [ 748.001835] mlx5_core 0000:08:00.2: mlx5_reclaim_root_pages:653:(pid 12985): failed reclaiming pages (-110) for func id 0x0 [ 748.002171] ------------[ cut here ]------------ [ 748.001177] FW pages counter is 4 after reclaiming all pages [ 748.001186] WARNING: CPU: 1 PID: 12985 at drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c:685 mlx5_reclaim_startup_pages+0x34b/0x460 [mlx5_core] [ +0.002771] Modules linked in: cls_flower mlx5_ib mlx5_core ptp pps_core act_mirred sch_ingress openvswitch nsh xt_conntrack xt_MASQUERADE nf_conntrack_netlink nfnetlink xt_addrtype iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 br_netfilter rpcrdma rdma_ucm ib_iser libiscsi scsi_transport_iscsi rdma_cm ib_umad ib_ipoib iw_cm ib_cm ib_uverbs ib_core overlay fuse [last unloaded: pps_core] [ 748.007225] CPU: 1 PID: 12985 Comm: tee Not tainted 5.12.0+ #1 [ 748.001376] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014 [ 748.002315] RIP: 0010:mlx5_reclaim_startup_pages+0x34b/0x460 [mlx5_core] [ 748.001679] Code: 28 00 00 00 0f 85 22 01 00 00 48 81 c4 b0 00 00 00 31 c0 5b 5d 41 5c 41 5d 41 5e 41 5f c3 48 c7 c7 40 cc 19 a1 e8 9f 71 0e e2 <0f> 0b e9 30 ff ff ff 48 c7 c7 a0 cc 19 a1 e8 8c 71 0e e2 0f 0b e9 [ 748.003781] RSP: 0018:ffff88815220faf8 EFLAGS: 00010286 [ 748.001149] RAX: 0000000000000000 RBX: ffff8881b4900280 RCX: 0000000000000000 [ 748.001445] RDX: 0000000000000027 RSI: 0000000000000004 RDI: ffffed102a441f51 [ 748.001614] RBP: 00000000000032b9 R08: 0000000000000001 R09: ffffed1054a15ee8 [ 748.001446] R10: ffff8882a50af73b R11: ffffed1054a15ee7 R12: fffffbfff07c1e30 [ 748.001447] R13: dffffc0000000000 R14: ffff8881b492cba8 R15: 0000000000000000 [ 748.001429] FS: 00007f58bd08b580(0000) GS:ffff8882a5080000(0000) knlGS:0000000000000000 [ 748.001695] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 748.001309] CR2: 000055a026351740 CR3: 00000001d3b48006 CR4: 0000000000370ea0 [ 748.001506] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 748.001483] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 748.001654] Call Trace: [ 748.000576] ? mlx5_satisfy_startup_pages+0x290/0x290 [mlx5_core] [ 748.001416] ? mlx5_cmd_teardown_hca+0xa2/0xd0 [mlx5_core] [ 748.001354] ? mlx5_cmd_init_hca+0x280/0x280 [mlx5_core] [ 748.001203] mlx5_function_teardown+0x30/0x60 [mlx5_core] [ 748.001275] mlx5_uninit_one+0xa7/0xc0 [mlx5_core] [ 748.001200] remove_one+0x5f/0xc0 [mlx5_core] [ 748.001075] pci_device_remove+0x9f/0x1d0 [ 748.000833] device_release_driver_internal+0x1e0/0x490 [ 748.001207] unbind_store+0x19f/0x200 [ 748.000942] ? sysfs_file_ops+0x170/0x170 [ 748.001000] kernfs_fop_write_iter+0x2bc/0x450 [ 748.000970] new_sync_write+0x373/0x610 [ 748.001124] ? new_sync_read+0x600/0x600 [ 748.001057] ? lock_acquire+0x4d6/0x700 [ 748.000908] ? lockdep_hardirqs_on_prepare+0x400/0x400 [ 748.001126] ? fd_install+0x1c9/0x4d0 [ 748.000951] vfs_write+0x4d0/0x800 [ 748.000804] ksys_write+0xf9/0x1d0 [ 748.000868] ? __x64_sys_read+0xb0/0xb0 [ 748.000811] ? filp_open+0x50/0x50 [ 748.000919] ? syscall_enter_from_user_mode+0x1d/0x50 [ 748.001223] do_syscall_64+0x3f/0x80 [ 748.000892] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 748.00 ---truncated---
AI Analysis
Technical Summary
CVE-2021-47246 is a vulnerability in the Linux kernel specifically affecting the Mellanox mlx5 Ethernet driver, which is used for high-performance network devices. The issue arises when a hairpin flow is added between network devices. Hairpin flows create a firmware-side send queue on the peer network device, which allocates host memory pages for its internal ring buffer. If the peer network device is removed or unbound before the hairpin flow is deleted, the send queue is not properly destroyed. This leads to a failure in reclaiming allocated pages and triggers a kernel stack trace during PCI device removal, indicating a resource leak and potential instability. The kernel logs show errors related to page reclaim timeouts and failed reclaiming of pages, culminating in warnings and stack traces in the mlx5_core driver. This bug can cause resource leaks and potentially kernel crashes or hangs due to improper cleanup of memory resources associated with the network device. The vulnerability is rooted in the mlx5_core driver's page reclaim logic and improper handling of device removal sequences in complex network configurations involving hairpin flows. No known exploits are reported in the wild, and no CVSS score has been assigned yet. The vulnerability affects Linux kernel versions containing the mlx5 driver with the specified commit hashes. The issue is primarily a stability and resource management flaw rather than a direct code execution or privilege escalation vulnerability.
Potential Impact
For European organizations, especially those operating data centers, cloud infrastructure, or high-performance computing environments that utilize Mellanox network adapters with Linux, this vulnerability could lead to system instability, unexpected kernel panics, or resource leaks. This can cause downtime or degraded network performance, impacting critical services and applications relying on low-latency, high-throughput networking. Organizations in sectors such as finance, telecommunications, research institutions, and cloud service providers are particularly at risk due to their reliance on advanced networking hardware and Linux-based systems. Although this vulnerability does not directly expose data or allow remote code execution, the resulting system instability could be exploited as part of a denial-of-service attack vector or cause operational disruptions. The lack of known exploits reduces immediate risk, but unpatched systems remain vulnerable to accidental or targeted triggering of this bug during device removal or reconfiguration processes.
Mitigation Recommendations
1. Apply the latest Linux kernel updates that include the patch for CVE-2021-47246 as soon as they become available from your Linux distribution vendor. 2. Avoid removing or unbinding Mellanox mlx5 network devices while hairpin flows are active; ensure proper deletion of hairpin flows before device removal. 3. Implement monitoring for kernel logs to detect mlx5_core warnings or stack traces indicative of this issue, enabling early detection of potential resource leaks. 4. For environments using virtualization or containerization, coordinate device hot-plug or removal operations carefully to prevent triggering the vulnerability. 5. Engage with Mellanox/NVIDIA support for firmware updates or driver patches that may further mitigate related issues. 6. Test kernel updates in staging environments to verify stability and ensure that network device removal sequences are handled correctly without causing resource leaks or crashes. 7. Consider network architecture adjustments to minimize reliance on hairpin flows if operationally feasible until patches are applied.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Finland, Ireland, Switzerland, Belgium, Italy
CVE-2021-47246: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Fix page reclaim for dead peer hairpin When adding a hairpin flow, a firmware-side send queue is created for the peer net device, which claims some host memory pages for its internal ring buffer. If the peer net device is removed/unbound before the hairpin flow is deleted, then the send queue is not destroyed which leads to a stack trace on pci device remove: [ 748.005230] mlx5_core 0000:08:00.2: wait_func:1094:(pid 12985): MANAGE_PAGES(0x108) timeout. Will cause a leak of a command resource [ 748.005231] mlx5_core 0000:08:00.2: reclaim_pages:514:(pid 12985): failed reclaiming pages: err -110 [ 748.001835] mlx5_core 0000:08:00.2: mlx5_reclaim_root_pages:653:(pid 12985): failed reclaiming pages (-110) for func id 0x0 [ 748.002171] ------------[ cut here ]------------ [ 748.001177] FW pages counter is 4 after reclaiming all pages [ 748.001186] WARNING: CPU: 1 PID: 12985 at drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c:685 mlx5_reclaim_startup_pages+0x34b/0x460 [mlx5_core] [ +0.002771] Modules linked in: cls_flower mlx5_ib mlx5_core ptp pps_core act_mirred sch_ingress openvswitch nsh xt_conntrack xt_MASQUERADE nf_conntrack_netlink nfnetlink xt_addrtype iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 br_netfilter rpcrdma rdma_ucm ib_iser libiscsi scsi_transport_iscsi rdma_cm ib_umad ib_ipoib iw_cm ib_cm ib_uverbs ib_core overlay fuse [last unloaded: pps_core] [ 748.007225] CPU: 1 PID: 12985 Comm: tee Not tainted 5.12.0+ #1 [ 748.001376] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014 [ 748.002315] RIP: 0010:mlx5_reclaim_startup_pages+0x34b/0x460 [mlx5_core] [ 748.001679] Code: 28 00 00 00 0f 85 22 01 00 00 48 81 c4 b0 00 00 00 31 c0 5b 5d 41 5c 41 5d 41 5e 41 5f c3 48 c7 c7 40 cc 19 a1 e8 9f 71 0e e2 <0f> 0b e9 30 ff ff ff 48 c7 c7 a0 cc 19 a1 e8 8c 71 0e e2 0f 0b e9 [ 748.003781] RSP: 0018:ffff88815220faf8 EFLAGS: 00010286 [ 748.001149] RAX: 0000000000000000 RBX: ffff8881b4900280 RCX: 0000000000000000 [ 748.001445] RDX: 0000000000000027 RSI: 0000000000000004 RDI: ffffed102a441f51 [ 748.001614] RBP: 00000000000032b9 R08: 0000000000000001 R09: ffffed1054a15ee8 [ 748.001446] R10: ffff8882a50af73b R11: ffffed1054a15ee7 R12: fffffbfff07c1e30 [ 748.001447] R13: dffffc0000000000 R14: ffff8881b492cba8 R15: 0000000000000000 [ 748.001429] FS: 00007f58bd08b580(0000) GS:ffff8882a5080000(0000) knlGS:0000000000000000 [ 748.001695] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 748.001309] CR2: 000055a026351740 CR3: 00000001d3b48006 CR4: 0000000000370ea0 [ 748.001506] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 748.001483] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 748.001654] Call Trace: [ 748.000576] ? mlx5_satisfy_startup_pages+0x290/0x290 [mlx5_core] [ 748.001416] ? mlx5_cmd_teardown_hca+0xa2/0xd0 [mlx5_core] [ 748.001354] ? mlx5_cmd_init_hca+0x280/0x280 [mlx5_core] [ 748.001203] mlx5_function_teardown+0x30/0x60 [mlx5_core] [ 748.001275] mlx5_uninit_one+0xa7/0xc0 [mlx5_core] [ 748.001200] remove_one+0x5f/0xc0 [mlx5_core] [ 748.001075] pci_device_remove+0x9f/0x1d0 [ 748.000833] device_release_driver_internal+0x1e0/0x490 [ 748.001207] unbind_store+0x19f/0x200 [ 748.000942] ? sysfs_file_ops+0x170/0x170 [ 748.001000] kernfs_fop_write_iter+0x2bc/0x450 [ 748.000970] new_sync_write+0x373/0x610 [ 748.001124] ? new_sync_read+0x600/0x600 [ 748.001057] ? lock_acquire+0x4d6/0x700 [ 748.000908] ? lockdep_hardirqs_on_prepare+0x400/0x400 [ 748.001126] ? fd_install+0x1c9/0x4d0 [ 748.000951] vfs_write+0x4d0/0x800 [ 748.000804] ksys_write+0xf9/0x1d0 [ 748.000868] ? __x64_sys_read+0xb0/0xb0 [ 748.000811] ? filp_open+0x50/0x50 [ 748.000919] ? syscall_enter_from_user_mode+0x1d/0x50 [ 748.001223] do_syscall_64+0x3f/0x80 [ 748.000892] entry_SYSCALL_64_after_hwframe+0x44/0xae [ 748.00 ---truncated---
AI-Powered Analysis
Technical Analysis
CVE-2021-47246 is a vulnerability in the Linux kernel specifically affecting the Mellanox mlx5 Ethernet driver, which is used for high-performance network devices. The issue arises when a hairpin flow is added between network devices. Hairpin flows create a firmware-side send queue on the peer network device, which allocates host memory pages for its internal ring buffer. If the peer network device is removed or unbound before the hairpin flow is deleted, the send queue is not properly destroyed. This leads to a failure in reclaiming allocated pages and triggers a kernel stack trace during PCI device removal, indicating a resource leak and potential instability. The kernel logs show errors related to page reclaim timeouts and failed reclaiming of pages, culminating in warnings and stack traces in the mlx5_core driver. This bug can cause resource leaks and potentially kernel crashes or hangs due to improper cleanup of memory resources associated with the network device. The vulnerability is rooted in the mlx5_core driver's page reclaim logic and improper handling of device removal sequences in complex network configurations involving hairpin flows. No known exploits are reported in the wild, and no CVSS score has been assigned yet. The vulnerability affects Linux kernel versions containing the mlx5 driver with the specified commit hashes. The issue is primarily a stability and resource management flaw rather than a direct code execution or privilege escalation vulnerability.
Potential Impact
For European organizations, especially those operating data centers, cloud infrastructure, or high-performance computing environments that utilize Mellanox network adapters with Linux, this vulnerability could lead to system instability, unexpected kernel panics, or resource leaks. This can cause downtime or degraded network performance, impacting critical services and applications relying on low-latency, high-throughput networking. Organizations in sectors such as finance, telecommunications, research institutions, and cloud service providers are particularly at risk due to their reliance on advanced networking hardware and Linux-based systems. Although this vulnerability does not directly expose data or allow remote code execution, the resulting system instability could be exploited as part of a denial-of-service attack vector or cause operational disruptions. The lack of known exploits reduces immediate risk, but unpatched systems remain vulnerable to accidental or targeted triggering of this bug during device removal or reconfiguration processes.
Mitigation Recommendations
1. Apply the latest Linux kernel updates that include the patch for CVE-2021-47246 as soon as they become available from your Linux distribution vendor. 2. Avoid removing or unbinding Mellanox mlx5 network devices while hairpin flows are active; ensure proper deletion of hairpin flows before device removal. 3. Implement monitoring for kernel logs to detect mlx5_core warnings or stack traces indicative of this issue, enabling early detection of potential resource leaks. 4. For environments using virtualization or containerization, coordinate device hot-plug or removal operations carefully to prevent triggering the vulnerability. 5. Engage with Mellanox/NVIDIA support for firmware updates or driver patches that may further mitigate related issues. 6. Test kernel updates in staging environments to verify stability and ensure that network device removal sequences are handled correctly without causing resource leaks or crashes. 7. Consider network architecture adjustments to minimize reliance on hairpin flows if operationally feasible until patches are applied.
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
- 2024-04-10T18:59:19.533Z
- Cisa Enriched
- true
- Cvss Version
- null
- State
- PUBLISHED
Threat ID: 682d9835c4522896dcbea19e
Added to database: 5/21/2025, 9:09:09 AM
Last enriched: 6/26/2025, 2:36:38 PM
Last updated: 7/31/2025, 12:35:54 PM
Views: 11
Related Threats
CVE-2025-7384: CWE-502 Deserialization of Untrusted Data in crmperks Database for Contact Form 7, WPforms, Elementor forms
CriticalCVE-2025-8491: CWE-352 Cross-Site Request Forgery (CSRF) in nikelschubert Easy restaurant menu manager
MediumCVE-2025-0818: CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in ninjateam File Manager Pro – Filester
MediumCVE-2025-8901: Out of bounds write in Google Chrome
HighCVE-2025-8882: Use after free in Google Chrome
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.