docs: README boot modes table reflects hypervisor default

This commit is contained in:
2026-07-02 11:23:27 +03:00
parent ce1e1ad677
commit 489a6e76e0
+9 -12
View File
@@ -146,22 +146,19 @@ sudo bash Hiperiso2Disk.sh -i -L MYUSB /dev/sdX # custom data-partition label
### Boot modes (current)
The deployed binary supports two boot modes selectable from the GRUB menu:
The deployed binary supports the **hypervisor mode (default)**, plus
two fallbacks selectable from the GRUB menu:
| Mode | How to select | Behavior |
|------|---------------|----------|
| **Direct (chain)** | Default menu entry | Boots ISO via Ventoy-style chain (small ISO read into RAM, KVM/QEMU launched by the host kernel). |
| **Memdisk** | Default fallback when chain fails | Loads the entire ISO into RAM, then boots via `memdisk`. Confirmed working. |
| **Hypervisor (default)** | Any ISO from the menu | Boots `vmlinuz` (host kernel with KVM built-in) + `initramfs.cpio.gz` from the ESP. The initramfs mounts the USB data partition, detects `/dev/kvm`, and launches QEMU with the selected ISO as a CD-ROM. Full serial/PCI/port I/O tracing and session logging to the data partition. |
| **Direct (chain)** | Auto-fallback if hypervisor initramfs is missing | Boots ISO via Ventoy-style chain (`hiperiso_x64.efi` loads the ISO in memory, no host kernel). |
| **Memdisk** | Auto-fallback if chain fails | Loads the entire ISO into RAM, then boots via `memdisk`. Confirmed working. |
The `hiso_hv_mode=1` "hypervisor" trigger (the killer feature that boots
ISOs through a Type-1 hypervisor path with full bootlogging) is defined
in `src/grub2/hiperiso_cmd.c` and `hiperiso_boot()` in `grub.cfg`, but
those code paths are in the in-tree rebrand source that is **not
currently compiled** — we build the GRUB module from the vendored Ventoy
modsrc, which doesn't have them. The initramfs + host kernel + QEMU +
OVMF payloads are built and in the ESP (see `build/payload/EFI/hiperiso/`),
so the infrastructure is ready. The remaining work is completing the
rebrand of the GRUB module to expose the hypervisor menu entry.
The hypervisor mode is auto-activated when the ESP contains both
`EFI/hiperiso/vmlinuz` and `EFI/hiperiso/initramfs.cpio.gz` (always
true after `scripts/build_all.sh`). To disable, write a sentinel file
`/hiperiso/no_hv_mode` on the data partition.
### View boot logs