CVE-2026-43200

Summary

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

PCI: endpoint: Fix swapped parameters in pci_{primary/secondary}_epc_epf_unlink() functions

struct configfs_item_operations callbacks are defined like the following:

int (*allow_link)(struct config_item *src, struct config_item *target); void (*drop_link)(struct config_item *src, struct config_item *target);

While pci_primary_epc_epf_link() and pci_secondary_epc_epf_link() specify the parameters in the correct order, pci_primary_epc_epf_unlink() and pci_secondary_epc_epf_unlink() specify the parameters in the wrong order, leading to the below kernel crash when using the unlink command in configfs:

Unable to handle kernel paging request at virtual address 0000000300000857 Mem abort info: … pc : string+0x54/0x14c lr : vsnprintf+0x280/0x6e8 … string+0x54/0x14c vsnprintf+0x280/0x6e8 vprintk_default+0x38/0x4c vprintk+0xc4/0xe0 pci_epf_unbind+0xdc/0x108 configfs_unlink+0xe0/0x208+0x44/0x74 vfs_unlink+0x120/0x29c __arm64_sys_unlinkat+0x3c/0x90 invoke_syscall+0x48/0x134 do_el0_svc+0x1c/0x30prop.0+0xd0/0xf0

[mani: cced stable, changed commit message as per https://lore.kernel.org/linux-pci/aV9joi3jF1R6ca02@ryzen]

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxe85a2d7837622bd99c96f5bbc7f972da90c285a2 < 58686bf62cb38b92e4b28408162a5703775b4d12affected
LinuxLinuxe85a2d7837622bd99c96f5bbc7f972da90c285a2 < 1c96c1acef4b4a1108fc13f84a8ac0b0633bbb46affected
LinuxLinuxe85a2d7837622bd99c96f5bbc7f972da90c285a2 < 142b1bba3299264b76ed8ef53cd93b2b2af65d6caffected
LinuxLinuxe85a2d7837622bd99c96f5bbc7f972da90c285a2 < 339191811e6fc4559c4008c5af7a91b05086d596affected
LinuxLinuxe85a2d7837622bd99c96f5bbc7f972da90c285a2 < 733cbc3aa97e71cc70847e75c925b364cc9b04a6affected
LinuxLinuxe85a2d7837622bd99c96f5bbc7f972da90c285a2 < aefc0e0bd20f54abe3b501b8798c0be656af272baffected
LinuxLinuxe85a2d7837622bd99c96f5bbc7f972da90c285a2 < 8754dd7639ab0fd68c3ab9d91c7bdecc3e5740a8affected
LinuxLinux5.12affected
LinuxLinux0 < 5.12unaffected
LinuxLinux5.15.202 <= 5.15.*unaffected
LinuxLinux6.1.165 <= 6.1.*unaffected
LinuxLinux6.6.128 <= 6.6.*unaffected
LinuxLinux6.12.75 <= 6.12.*unaffected
LinuxLinux6.18.16 <= 6.18.*unaffected
LinuxLinux6.19.6 <= 6.19.*unaffected
LinuxLinux7.0 <= *unaffected

Weaknesses

References