Repository navigation
0.7.7
0.7.7: a stale Docker pid file is removed at boot, the kext logs why HyperKit may be killed on macOS 26, CR2 writes are applied
- Docker after a reboot. HyperKit refused to start ("Failed to set up pidfile") when
hyperkit.pidfrom the previous boot was still there. The boot service now removes a pid file that does not name a running HyperKit. Run./rhv autostart installonce to get the new script. - macOS 26 and Docker (issue 1). Before it patches HyperKit, the kext writes the process's code-signing flags to the log (
rhv-info log | grep "client fix-ups"):enforcement offis what a machine with AMFI relaxed shows; withenforcement ONit adds a warning, because on macOS 26.7.1 a HyperKit with enforcement on was killed (Code Signature Invalid) right after the patch. Whether relaxing AMFI is enough on macOS 26 is not known (not tested there). - CR2. The kext did not apply a write of CR2 by the client; it does now (VMware's instruction emulator injects page faults). No program tried here writes it.
- For debugging a stalled client (off by default, no cost when off):
rhv-info hv debug N,hv flightdump [N [SKIP]],hv readguest <hex va>: a ring of the last 2048 exits with registers, GS/KERNEL_GS_BASE and what the client wrote before each run, and a read of guest memory through the guest's own page tables. It was used to look at VMware Fusion's hang at the Windows logo, which is not solved: the guest ends in a recursive page fault in Windows'KiPageFaultwith the user GS base (details indocs/ROADMAP.md, item 12). - The open points from the issues are in
docs/ROADMAP.md(items 13 to 19). One of them: HyperKit sometimes aborts in its vCPU thread (once in about six starts here, also once on an older build); starting Docker again works.
Tested on a Ryzen 7 5800H, macOS 15.8.1: Docker hello-world and alpine in native mode (the kext in the archive has the same code as the one tested); Parallels (native), Windows 10 boot with the keyboard armed and prlctl exec; the unit tests. Not tested: other machines, macOS 26.
Update: unpack, ./rhv kext --native, reboot, ./rhv autostart install.