CVE-2026-90244
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
W jądrze Linuksa usunięto następującą lukę:
iommu/dma: Przywróć blokadę wokół msi_page_list
W przeciwieństwie do domyślnej domeny grupy, która jest zawsze świeżo przydzielana
i prywatna (iommu_group_alloc_default_domain()), VFIO typu 1
starszy kontener łączy każdą nowo dołączoną grupę z istniejącą
domeny za każdym razem, gdy ich iommu_ops i wymuszanie spójności pamięci podręcznej są zgodne.
iommu_dma_get_msi_page() potwierdza jedynie, że muteksem grupy dzwoniącego jest
wstrzymane (iommu_group_mutex_assert()). Na IOMMU, które publikuje
IOMMU_RESV_SW_MSI, np. ARM SMMU, maszyna wirtualna z przypisanymi dwoma takimi urządzeniami
za pośrednictwem starszego kontenera mogą mieć sterowniki-gościa sondujące i
przydzielać MSI równolegle; ląduje każde VFIO_DEVICE_SET_IRQS po stronie hosta
na innym urządzeniu fd i group mutex, ale domeny obu urządzeń
to ta sama połączona domena, więc obie mogą wejść
iommu_dma_get_msi_page() jednocześnie i uszkadza msi_page_list.
zatwierdzić 288683c92b1a („iommu: Zmień iommu_dma_prepare_msi() w
operacja ogólna”) upuściła wcześniejszą blokadę msi_prepare_lock na
rozumowanie, że „każda iommu_domain jest unikalna dla grupy”, co potwierdza
dla domen domyślnych, ale nie w przypadku VFIO typu 1. Przywróć statykę
zamek, ponieważ chroni tylko skrzynkę narożną i prawdopodobnie nigdy nie będzie
być kwestionowane.
iommufd pozwala uniknąć podobnego problemu, mając własne obiekty wywołujące
(iommufd_sw_map_msi()) jeszcze nigdy wcześniej nie korzystaj z sw_msi_lock o szerokości ctx
dotarcie do udostępnionej listy. VFIO type1 nie może tego odzwierciedlić, ponieważ tak jest
wysyła do iommu_dma_sw_msi(), która znajduje się poza jurysdykcją VFIO.
>_ Referencje
Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.
This product uses the NVD API but is not endorsed or certified by the NVD.
Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org