CVE-2026-64461

Summary

In the Linux kernel, the following vulnerability has been resolved:

PCI: mediatek: Fix IRQ domain leak when port fails to enable

When mtk_pcie_enable_port() fails, mtk_pcie_port_free() removes the port from pcie->ports and frees the port structure. However, the IRQ domains set up earlier by mtk_pcie_init_irq_domain() are never freed.

Fix this by refactoring mtk_pcie_irq_teardown() into a per-port helper, mtk_pcie_irq_teardown_port(), and calling it from mtk_pcie_setup() when mtk_pcie_enable_port() fails. Since the IRQ teardown must only happen in the probe error path (during resume, child devices may have active MSI mappings and the NOIRQ context prohibits sleeping locks), mtk_pcie_enable_port() is changed to return an error code so callers can distinguish the two paths and act accordingly.

This issue was reported by Sashiko while reviewing the EcoNet EN7528 SoC support series.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxb099631df160ec608cd6147f4d20a8042567a5b8 < e23da72ef202654a7d5269885c4fa39a8404db76affected
LinuxLinuxb099631df160ec608cd6147f4d20a8042567a5b8 < ec7c05eed47d8b15c45380aee7ca168a82e15035affected
LinuxLinuxb099631df160ec608cd6147f4d20a8042567a5b8 < 1fbe8972a39548a633d06d7b03a01b7b119a2c12affected
LinuxLinuxb099631df160ec608cd6147f4d20a8042567a5b8 < fe8c701a53c2816cd82301f66c671d952003c1b0affected
LinuxLinuxb099631df160ec608cd6147f4d20a8042567a5b8 < ce52e494a7555bdae1d990a2654fd7547ef6d986affected
LinuxLinuxb099631df160ec608cd6147f4d20a8042567a5b8 < 6e6a529d6f779413379b4404c9ef6a36c0337225affected
LinuxLinuxb099631df160ec608cd6147f4d20a8042567a5b8 < df77314b3bedbd9ad5d6f0682f98b99e3c5f7e2eaffected
LinuxLinuxb099631df160ec608cd6147f4d20a8042567a5b8 < f865a57896bd92d7662eb2818d8f48872e2cbbc7affected
LinuxLinux4.14affected
LinuxLinux0 < 4.14unaffected
LinuxLinux5.10.261 <= 5.10.*unaffected
LinuxLinux5.15.212 <= 5.15.*unaffected
LinuxLinux6.1.178 <= 6.1.*unaffected
LinuxLinux6.6.145 <= 6.6.*unaffected
LinuxLinux6.12.97 <= 6.12.*unaffected
LinuxLinux6.18.39 <= 6.18.*unaffected
LinuxLinux7.1.4 <= 7.1.*unaffected
LinuxLinux7.2-rc1 <= *unaffected

Weaknesses

References