Description
In the Linux kernel, the following vulnerability has been resolved: iommu/vt-d: Fix PCI device refcount leak in dmar_dev_scope_init() for_each_pci_dev() is implemented by pci_get_device(). The comment of pci_get_device() says that it will increase the reference count for the returned pci_dev and also decrease the reference count for the input pci_dev @from if it is not NULL. If we break for_each_pci_dev() loop with pdev not NULL, we need to call pci_dev_put() to decrease the reference count. Add the missing pci_dev_put() for the error path to avoid reference count leak.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
2e45528930388658603ea24d49cf52867b928d3e to < d47bc9d7bcdbb9adc9703513d964b514fee5b0bfaffected2e45528930388658603ea24d49cf52867b928d3e to < 71c4a621985fc051ab86d3a86c749069a993fcb2affected2e45528930388658603ea24d49cf52867b928d3e to < 876d7bfb89273997056220029ff12b1c2cc4691daffected2e45528930388658603ea24d49cf52867b928d3e to < cbdd83bd2fd67142b03ce9dbdd1eab322ff7321faffected2e45528930388658603ea24d49cf52867b928d3e to < a5c65cd56aed027f8a97fda8b691caaeb66d115eaffected2e45528930388658603ea24d49cf52867b928d3e to < bdb613ef179ad4bb9d56a2533e9b30e434f1dfb7affected2e45528930388658603ea24d49cf52867b928d3e to < 2a8f7b90681472948de172dbbf5a54cd342870aaaffected2e45528930388658603ea24d49cf52867b928d3e to < 4bedbbd782ebbe7287231fea862c158d4f08a9e3affected
Linux Linux
Default version status: affected
3.15affected0 to < 3.15unaffected4.9.335 to ≤ 4.9.*unaffected4.14.301 to ≤ 4.14.*unaffected4.19.268 to ≤ 4.19.*unaffected5.4.226 to ≤ 5.4.*unaffected5.10.158 to ≤ 5.10.*unaffected5.15.82 to ≤ 5.15.*unaffected6.0.12 to ≤ 6.0.*unaffected6.1 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/d47bc9d7bcdbb9adc9703513d964b514fee5b0bf ↗
- https://git.kernel.org/stable/c/71c4a621985fc051ab86d3a86c749069a993fcb2 ↗
- https://git.kernel.org/stable/c/876d7bfb89273997056220029ff12b1c2cc4691d ↗
- https://git.kernel.org/stable/c/cbdd83bd2fd67142b03ce9dbdd1eab322ff7321f ↗
- https://git.kernel.org/stable/c/a5c65cd56aed027f8a97fda8b691caaeb66d115e ↗
- https://git.kernel.org/stable/c/bdb613ef179ad4bb9d56a2533e9b30e434f1dfb7 ↗
- https://git.kernel.org/stable/c/2a8f7b90681472948de172dbbf5a54cd342870aa ↗
- https://git.kernel.org/stable/c/4bedbbd782ebbe7287231fea862c158d4f08a9e3 ↗