Page MenuHomeFreeBSD

Azure FreeBSD Gen 2 Support
Needs ReviewPublic

Authored by michael.baptist_dell.com on Sep 29 2022, 3:42 PM.

Details

Reviewers
whu
Summary

acpi(4): Hyper-V don't reserve child SYS_RES_MEMORY during bus probing.

Azure Hyper-V ACPI firmware will attempt to allocate large chunks of
memory which will block downstream devices from joining. Microsofts ACPI
acpi_syscontainer driver will take up 6 billion addresses and block its own
SR-IOV pcibX devices from being able to be allocated.


Build Hyper-V pcib driver in hyperv device drivers.

This also changes the name of the pcib device module name so it is
easier to idenfity as a hyper-v driver.


Hyper-V: Azure Gen 2 console workaround.

Gen 2 UEFI booting on Azure has a bug in their console which causes
prints during initial booting to freeze the node. Once the CPUs are
initialized it looks like the printfs can resume.

Test Plan
  1. Confirm Azure Gen 2 VMs boot via UEFI
  2. Show driver name change is clearly listed with other HV drivers.
  3. Show SRIOV nics working on Gen VMs.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 47608
Build 44495: arc lint + arc unit

Event Timeline

michael.baptist_dell.com added a reviewer: whu.
michael.baptist_dell.com retitled this revision from acpi(4): Hyper-V don't reserve child SYS_RES_MEMORY during bus probing. to Azure FreeBSD Gen 2 Support.
michael.baptist_dell.com edited the summary of this revision. (Show Details)