In the Linux kernel, the following vulnerability has been resolved:
i40e: Fix freeing of uninitialized misc IRQ vector
When VSI set up failed in i40e_probe() as part of PF switch set up driver was trying to free misc IRQ vectors in i40e_clear_interrupt_scheme and produced a kernel Oops:
Trying to free already-free IRQ 266 WARNING: CPU: 0 PID: 5 at kernel/irq/manage.c:1731 __free_irq+0x9a/0x300 Workqueue: events work_for_cpu_fn RIP: 0010:__free_irq+0x9a/0x300 Call Trace: ? synchronize_irq+0x3a/0xa0 free_irq+0x2e/0x60 i40e_clear_interrupt_scheme+0x53/0x190 [i40e] i40e_probe.part.108+0x134b/0x1a40 [i40e] ? kmem_cache_alloc+0x158/0x1c0 ? acpi_ut_update_ref_count.part.1+0x8e/0x345 ? acpi_ut_update_object_reference+0x15e/0x1e2 ? strstr+0x21/0x70 ? irq_get_irq_data+0xa/0x20 ? mp_check_pin_attr+0x13/0xc0 ? irq_get_irq_data+0xa/0x20 ? mp_map_pin_to_irq+0xd3/0x2f0 ? acpi_register_gsi_ioapic+0x93/0x170 ? pci_conf1_read+0xa4/0x100 ? pci_bus_read_config_word+0x49/0x70 ? do_pci_enable_device+0xcc/0x100 local_pci_probe+0x41/0x90 work_for_cpu_fn+0x16/0x20 process_one_work+0x1a7/0x360 worker_thread+0x1cf/0x390 ? create_worker+0x1a0/0x1a0 kthread+0x112/0x130 ? kthread_flush_work_fn+0x10/0x10 ret_from_fork+0x1f/0x40
The problem is that at that point misc IRQ vectors were not allocated yet and we get a call trace that driver is trying to free already free IRQ vectors.
Add a check in i40e_clear_interrupt_scheme for __I40E_MISC_IRQ_REQUESTED PF state before calling i40e_free_misc_vector. This state is set only if misc IRQ vectors were properly initialized.
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 |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-debuginfoUpgrade kernel-headersUpgrade python-perf-debuginfoUpgrade python-perfUpgrade kernelUpgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-5.10.75-79.358Upgrade kernel-tools-develUpgrade bpftoolUpgrade kernel-toolsUpgrade perfUpgrade kernel-develUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-tools-debuginfoUpgrade perf-debuginfo | May 22, 2025 | May 21, 2024 |
| Debian | — | Upgrade linux | Jul 30, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernel-toolsUpgrade kernel-tools-libsUpgrade kernelUpgrade python3-perf | Oct 8, 2024 | May 21, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | May 21, 2024 |
| Suse | — | Upgrade dtb-rockchipUpgrade kselftests-kmp-rtUpgrade dtb-armUpgrade kernel-debug-vdsoUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-rt-develUpgrade kernel-rt-livepatch-develUpgrade kernel-default-manUpgrade kernel-obs-qaUpgrade kernel-rt_debug-vdsoUpgrade kernel-64kb-develUpgrade dtb-sprdUpgrade kernel-docsUpgrade dtb-mediatekUpgrade dlm-kmp-azureUpgrade dtb-nvidiaUpgrade kselftests-kmp-defaultUpgrade dtb-socionextUpgrade reiserfs-kmp-rtUpgrade kernel-macrosUpgrade kernel-rt_debugUpgrade kernel-default-livepatch-develUpgrade kernel-defaultUpgrade kernel-obs-buildUpgrade kernel-default-extraUpgrade dlm-kmp-rtUpgrade dlm-kmp-defaultUpgrade reiserfs-kmp-azureUpgrade kernel-azure-vdsoUpgrade kernel-debug-develUpgrade cluster-md-kmp-defaultUpgrade kernel-devel-rtUpgrade dtb-apmUpgrade dtb-amdUpgrade reiserfs-kmp-defaultUpgrade kernel-64kb-extraUpgrade kernel-default-baseUpgrade ocfs2-kmp-azureUpgrade dtb-amlogicUpgrade kernel-syms-rtUpgrade dtb-renesasUpgrade kernel-rt-extraUpgrade kernel-debug-livepatch-develUpgrade cluster-md-kmp-64kbUpgrade kernel-default-base-rebuildUpgrade gfs2-kmp-defaultUpgrade dtb-xilinxUpgrade kernel-azure-develUpgrade kernel-rt-livepatchUpgrade kselftests-kmp-64kbUpgrade gfs2-kmp-azureUpgrade kernel-azure-livepatch-develUpgrade kernel-64kb-livepatch-develUpgrade kernel-default-vdsoUpgrade kernel-zfcpdumpUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-sourceUpgrade kernel-default-develUpgrade kernel-rt_debug-develUpgrade kernel-syms-azureUpgrade kernel-preempt-develUpgrade kernel-rtUpgrade kernel-azure-baseUpgrade kernel-default-livepatchUpgrade kernel-azure-optionalUpgrade dtb-caviumUpgrade kernel-symsUpgrade dtb-freescaleUpgrade ocfs2-kmp-rtUpgrade gfs2-kmp-rtUpgrade kernel-source-vanillaUpgrade dtb-qcomUpgrade kernel-azure-extraUpgrade dtb-amazonUpgrade ocfs2-kmp-defaultUpgrade kernel-develUpgrade kernel-debugUpgrade kernel-azureUpgrade kernel-rt-vdsoUpgrade ocfs2-kmp-64kbUpgrade kselftests-kmp-azureUpgrade kernel-docs-htmlUpgrade kernel-devel-azureUpgrade kernel-rt-optionalUpgrade kernel-kvmsmallUpgrade dlm-kmp-64kbUpgrade cluster-md-kmp-azureUpgrade kernel-source-azureUpgrade kernel-64kb-optionalUpgrade dtb-exynosUpgrade kernel-64kbUpgrade kernel-kvmsmall-develUpgrade kernel-source-rtUpgrade dtb-marvellUpgrade dtb-alteraUpgrade cluster-md-kmp-rtUpgrade dtb-appleUpgrade gfs2-kmp-64kbUpgrade reiserfs-kmp-64kbUpgrade dtb-broadcomUpgrade kernel-preemptUpgrade dtb-hisiliconUpgrade dtb-lgUpgrade kernel-default-optionalUpgrade kernel-kvmsmall-vdsoUpgrade dtb-allwinner | Aug 9, 2024 | May 21, 2024 |
| Ubuntu | — | Upgrade linux-gcp-5.4Upgrade linux-hweUpgrade linux-gcp-fipsUpgrade linux-gkeopUpgrade linux-aws-fipsUpgrade linux-gcpUpgrade linux-azure-5.4Upgrade linux-azure-fipsUpgrade linux-ibmUpgrade linux-oracleUpgrade linuxUpgrade linux-gcp-4.15Upgrade linux-azure-4.15Upgrade linux-hwe-5.4Upgrade linux-fipsUpgrade linux-aws-5.4Upgrade linux-oracle-5.4Upgrade linux-azureUpgrade linux-bluefieldUpgrade linux-awsUpgrade linux-kvmUpgrade linux-aws-hweUpgrade linux-raspi-5.4Upgrade linux-raspi | Nov 19, 2024 | May 21, 2024 |
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