In the Linux kernel, the following vulnerability has been resolved:
net/mlx5e: Fix inversion dependency warning while enabling IPsec tunnel
Attempt to enable IPsec packet offload in tunnel mode in debug kernel generates the following kernel panic, which is happening due to two issues: 1. In SA add section, the should be _bh() variant when marking SA mode. 2. There is not needed flush_workqueue in SA delete routine. It is not needed as at this stage as it is removed from SADB and the running work will be canceled later in SA free.
===================================================== WARNING: SOFTIRQ-safe -> SOFTIRQ-unsafe lock order detected 6.12.0+ #4 Not tainted ----------------------------------------------------- charon/1337 [HC0[0]:SC0[4]:HE1:SE0] is trying to acquire: ffff88810f365020 (&xa->xa_lock#24){+.+.}-{3:3}, at: mlx5e_xfrm_del_state+0xca/0x1e0 [mlx5_core]
and this task is already holding: ffff88813e0f0d48 (&x->lock){+.-.}-{3:3}, at: xfrm_state_delete+0x16/0x30 which would create a new lock dependency: (&x->lock){+.-.}-{3:3} -> (&xa->xa_lock#24){+.+.}-{3:3}
but this new dependency connects a SOFTIRQ-irq-safe lock: (&x->lock){+.-.}-{3:3}
... which became SOFTIRQ-irq-safe at: lock_acquire+0x1be/0x520 _raw_spin_lock_bh+0x34/0x40 xfrm_timer_handler+0x91/0xd70 __hrtimer_run_queues+0x1dd/0xa60 hrtimer_run_softirq+0x146/0x2e0 handle_softirqs+0x266/0x860 irq_exit_rcu+0x115/0x1a0 sysvec_apic_timer_interrupt+0x6e/0x90 asm_sysvec_apic_timer_interrupt+0x16/0x20 default_idle+0x13/0x20 default_idle_call+0x67/0xa0 do_idle+0x2da/0x320 cpu_startup_entry+0x50/0x60 start_secondary+0x213/0x2a0 common_startup_64+0x129/0x138
to a SOFTIRQ-irq-unsafe lock: (&xa->xa_lock#24){+.+.}-{3:3}
... which became SOFTIRQ-irq-unsafe at: ... lock_acquire+0x1be/0x520 _raw_spin_lock+0x2c/0x40 xa_set_mark+0x70/0x110 mlx5e_xfrm_add_state+0xe48/0x2290 [mlx5_core] xfrm_dev_state_add+0x3bb/0xd70 xfrm_add_sa+0x2451/0x4a90 xfrm_user_rcv_msg+0x493/0x880 netlink_rcv_skb+0x12e/0x380 xfrm_netlink_rcv+0x6d/0x90 netlink_unicast+0x42f/0x740 netlink_sendmsg+0x745/0xbe0 __sock_sendmsg+0xc5/0x190 __sys_sendto+0x1fe/0x2c0 __x64_sys_sendto+0xdc/0x1b0 do_syscall_64+0x6d/0x140 entry_SYSCALL_64_after_hwframe+0x4b/0x53
other info that might help us debug this:
Possible interrupt unsafe locking scenario:
CPU0 CPU1 ---- ---- lock(&xa->xa_lock#24); local_irq_disable(); lock(&x->lock); lock(&xa->xa_lock#24); <Interrupt> lock(&x->lock);
*** DEADLOCK ***
2 locks held by charon/1337: #0: ffffffff87f8f858 (&net->xfrm.xfrm_cfg_mutex){+.+.}-{4:4}, at: xfrm_netlink_rcv+0x5e/0x90 #1: ffff88813e0f0d48 (&x->lock){+.-.}-{3:3}, at: xfrm_state_delete+0x16/0x30
the dependencies between SOFTIRQ-irq-safe lock and the holding lock: -> (&x->lock){+.-.}-{3:3} ops: 29 { HARDIRQ-ON-W at: lock_acquire+0x1be/0x520 _raw_spin_lock_bh+0x34/0x40 xfrm_alloc_spi+0xc0/0xe60 xfrm_alloc_userspi+0x5f6/0xbc0 xfrm_user_rcv_msg+0x493/0x880 netlink_rcv_skb+0x12e/0x380 xfrm_netlink_rcv+0x6d/0x90 netlink_unicast+0x42f/0x740 netlink_sendmsg+0x745/0xbe0 __sock_sendmsg+0xc5/0x190 __sys_sendto+0x1fe/0x2c0 __x64_sys_sendto+0xdc/0x1b0 do_syscall_64+0x6d/0x140 entry_SYSCALL_64_after_hwframe+0x4b/0x53 IN-SOFTIRQ-W at: lock_acquire+0x1be/0x520 _raw_spin_lock_bh+0x34/0x40 xfrm_timer_handler+0x91/0xd70 __hrtimer_run_queues+0x1dd/0xa60 ---truncated---
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Suse | — | Upgrade kernel-rt_debugUpgrade kernel-develUpgrade kernel-syms-rtUpgrade dtb-renesasUpgrade kselftests-kmp-rtUpgrade kernel-defaultUpgrade dtb-appleUpgrade dtb-armUpgrade reiserfs-kmp-defaultUpgrade kernel-default-baseUpgrade dlm-kmp-azureUpgrade dtb-marvellUpgrade kernel-rt_debug-vdsoUpgrade dtb-nvidiaUpgrade kernel-64kb-develUpgrade dlm-kmp-defaultUpgrade kernel-azureUpgrade kernel-source-vanillaUpgrade kselftests-kmp-defaultUpgrade cluster-md-kmp-64kbUpgrade kernel-azure-vdsoUpgrade kernel-debug-vdsoUpgrade kernel-docsUpgrade kernel-debugUpgrade kernel-default-livepatch-develUpgrade gfs2-kmp-defaultUpgrade kernel-debug-develUpgrade dlm-kmp-rtUpgrade dtb-socionextUpgrade kernel-docs-htmlUpgrade ocfs2-kmp-defaultUpgrade dtb-allwinnerUpgrade dtb-amdUpgrade kernel-64kb-optionalUpgrade kernel-obs-buildUpgrade reiserfs-kmp-rtUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rt-livepatch-develUpgrade dtb-hisiliconUpgrade kernel-azure-extraUpgrade kernel-rt-extraUpgrade kselftests-kmp-azureUpgrade dtb-sprdUpgrade ocfs2-kmp-azureUpgrade kernel-rt-optionalUpgrade kernel-64kb-extraUpgrade dtb-broadcomUpgrade gfs2-kmp-azureUpgrade dtb-lgUpgrade kernel-rt_debug-develUpgrade dtb-xilinxUpgrade reiserfs-kmp-azureUpgrade kernel-default-livepatchUpgrade dtb-freescaleUpgrade cluster-md-kmp-defaultUpgrade kernel-sourceUpgrade kernel-rtUpgrade kernel-64kbUpgrade dtb-caviumUpgrade kselftests-kmp-64kbUpgrade kernel-symsUpgrade kernel-source-rtUpgrade kernel-obs-qaUpgrade kernel-default-develUpgrade kernel-azure-optionalUpgrade cluster-md-kmp-rtUpgrade cluster-md-kmp-azureUpgrade kernel-default-optionalUpgrade kernel-macrosUpgrade kernel-syms-azureUpgrade dtb-qcomUpgrade dtb-amazonUpgrade kernel-zfcpdumpUpgrade kernel-source-azureUpgrade kernel-rt-vdsoUpgrade ocfs2-kmp-rtUpgrade ocfs2-kmp-64kbUpgrade kernel-kvmsmallUpgrade kernel-devel-azureUpgrade kernel-default-vdsoUpgrade dtb-amlogicUpgrade dtb-mediatekUpgrade dtb-exynosUpgrade dtb-alteraUpgrade kernel-azure-develUpgrade gfs2-kmp-rtUpgrade kernel-rt-develUpgrade dlm-kmp-64kbUpgrade kernel-devel-rtUpgrade gfs2-kmp-64kbUpgrade dtb-rockchipUpgrade kernel-kvmsmall-develUpgrade kernel-default-extraUpgrade kernel-default-base-rebuildUpgrade dtb-apmUpgrade reiserfs-kmp-64kb | Feb 12, 2025 | Jan 31, 2025 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1018-azure-nvidiaUpgrade linux-image-6.8.0-1030-azure-fdeUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-6.8.0-1027-ibmUpgrade linux-image-6.8.0-1030-azureUpgrade linux-image-6.11.0-1008-realtimeUpgrade linux-image-lowlatency-64kUpgrade linux-image-gkeUpgrade linux-image-nvidia-6.8Upgrade linux-image-gcp-64kUpgrade linux-image-gkeop-6.8Upgrade linux-image-ibmUpgrade linux-image-azureUpgrade linux-image-6.8.0-62-lowlatency-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.8.0-2024-raspi-realtimeUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-1030-awsUpgrade linux-image-oem-22.04aUpgrade linux-image-generic-64kUpgrade linux-image-virtualUpgrade linux-image-lowlatencyUpgrade linux-image-oem-22.04cUpgrade linux-image-6.8.0-62-genericUpgrade linux-image-6.8.0-1029-nvidia-lowlatency-64kUpgrade linux-image-6.11.0-1014-oracleUpgrade linux-image-6.8.0-1013-gkeopUpgrade linux-image-6.8.0-1027-oracleUpgrade linux-image-6.11.0-1020-oemUpgrade linux-image-gkeopUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-aws-64kUpgrade linux-image-6.8.1-1023-realtimeUpgrade linux-image-6.11.0-1012-lowlatency-64kUpgrade linux-image-oem-24.04Upgrade linux-image-nvidiaUpgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-1031-gcpUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-oem-24.04bUpgrade linux-image-genericUpgrade linux-image-oem-22.04Upgrade linux-image-6.8.0-64-genericUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.8.0-1031-gcp-64kUpgrade linux-image-6.11.0-24-genericUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-oracle-64kUpgrade linux-image-6.11.0-1013-gcp-64kUpgrade linux-image-raspiUpgrade linux-image-awsUpgrade linux-image-6.8.0-1030-aws-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-1029-nvidia-lowlatencyUpgrade linux-image-ibm-classicUpgrade linux-image-virtual-6.8Upgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-6.11.0-24-generic-64kUpgrade linux-image-6.8.0-62-lowlatencyUpgrade linux-image-oracleUpgrade linux-image-oem-24.04aUpgrade linux-image-kvmUpgrade linux-image-azure-nvidiaUpgrade linux-image-6.8.0-1029-oemUpgrade linux-image-oem-22.04dUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.8.0-64-generic-64kUpgrade linux-image-6.8.0-1029-nvidiaUpgrade linux-image-nvidia-64kUpgrade linux-image-azure-fdeUpgrade linux-image-realtimeUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-1029-raspiUpgrade linux-image-6.11.0-1013-azureUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.11.0-1013-gcpUpgrade linux-image-generic-64k-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-1027-oracle-64kUpgrade linux-image-6.8.0-1026-gkeUpgrade linux-image-6.11.0-1014-oracle-64kUpgrade linux-image-6.11.0-1013-azure-fdeUpgrade linux-image-6.11.0-1012-lowlatencyUpgrade linux-image-6.11.0-1011-raspiUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.11.0-1012-awsUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-generic-6.8Upgrade linux-image-6.8.0-62-generic-64kUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-gcpUpgrade linux-image-6.8.0-1029-nvidia-64kUpgrade linux-image-oem-22.04b | Apr 24, 2025 | Jan 31, 2025 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub