Page MenuHomeFreeBSD

AMD-vi: Fortify IVHD device_identify process
ClosedPublic

Authored by khng on Apr 1 2021, 12:13 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Jan 22, 2:24 PM
Unknown Object (File)
Sat, Jan 18, 3:12 PM
Unknown Object (File)
Sat, Jan 18, 1:34 AM
Unknown Object (File)
Wed, Jan 15, 1:11 PM
Unknown Object (File)
Mon, Jan 13, 12:07 AM
Unknown Object (File)
Sun, Jan 12, 7:22 PM
Unknown Object (File)
Tue, Jan 7, 4:44 PM
Unknown Object (File)
Thu, Jan 2, 1:21 PM
Subscribers

Details

Summary
  • Use malloc(9) to allocate ivhd_hdrs list. The previous assumption that there are at most 10 IVHDs in a system is not true. A counter example would be a system with 4 IOMMUs, and each IOMMU is related to IVHDs type 10h, 11h and 40h in the ACPI IVRS table.
  • Always scan through the whole ivhd_hdrs list to find IVHDs that has the same DeviceId but less prioritized IVHD type.

Sponsored by: The FreeBSD Foundation
MFC with: 74ada297e897

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable