Skip to content

FreeBSD cloud image support #446

@nirs

Description

@nirs

Booting from FreeBSD 15.0 cloud image fails with an error about missing device tree. This works with qemu.

Image: https://download.freebsd.org/releases/VM-IMAGES/15.0-RELEASE/aarch64/Latest/FreeBSD-15.0-RELEASE-arm64-aarch64-BASIC-CLOUDINIT-ufs.raw.xz

Using ISO probably works based on https://github.com/jlduran/RunningGUIFreeBSDInAVirtualMachineOnAMac

Need to understand why this fails and ISO works.

Gemini analysis

The panic occurs because FreeBSD 15's loader.efi is failing to properly fall back to ACPI discovery when an FDT (Device Tree) is absent. Apple's VZEFIBootLoader provides hardware info via ACPI, but does not populate the FDT entry in the EFI configuration table.

This is likely related to a regression/change in FreeBSD 15 (e.g., Bug 282936) regarding ACPI SPCR table parsing.

Suggested Workaround

Interrupt the boot at the loader prompt and run:

  1. unset hw.uart.console
  2. set hint.acpi.0.disabled="0"
  3. boot

Alternatively, ensure /boot/loader.conf contains acpi_load="YES".

Note on Cloud Images

FreeBSD Cloud images are often pre-configured for FDT-heavy environments (AWS/KVM). For vfkit, which uses Apple's native ACPI-based virtualization, the standard GENERIC or disc1 images may provide better out-of-the-box compatibility.

Tasks

  • check the suggested workarounds
  • Test with latest stable release (14.4)
  • Report FreeBSD bug

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions