marcan changed the topic of #asahi to: Asahi Linux: porting Linux to Apple Silicon macs | General project discussion | GitHub: https://alx.sh/g | Wiki: https://alx.sh/w | Topics: #asahi-dev #asahi-re #asahi-gpu #asahi-offtopic | Keep things on topic | Logs: https://alx.sh/l/asahi
<jeffmiw>
what would be the starting point for such a thin VM hypervisor in m1n1 ?
mxw39 has joined #asahi
jeffmiw has quit [Remote host closed the connection]
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 245 seconds]
raster has joined #asahi
KindTwo has joined #asahi
KindOne has quit [Ping timeout: 245 seconds]
KindTwo is now known as KindOne
jeffmiw has joined #asahi
jeffmiw has quit [Ping timeout: 260 seconds]
jeffmiw has joined #asahi
qncfj has joined #asahi
choozy has joined #asahi
taziden has quit [Ping timeout: 272 seconds]
taziden has joined #asahi
qncfj has quit [Quit: WeeChat 3.0]
<arnd>
jeffmiw: all the cool kids these days build on top of rustvmm
<jeffmiw>
ok, thanks arnd
<bpye>
Presumably the m1n1 hypervisor wouldn't really need much of a VMM stack, it'd mostly be passthrough with the ability to log reads/writes to certain MMIO ranges and possibly inject them?
<bpye>
I guess if you wanted to provide a thin hypervisor to make M1 look like a more normal device (emulating SBSA I guess?) then maybe your thinking is different.
<pipcet[m]>
so the idea would be to run macOS and letting it believe it was directly on hardware, but to intercept MMIO and MSR accesses and log them? what would we do about unknown instructions?
<jeffmiw>
agree with bpye, rustvmm seems to be a VM Monitor, not really a thin hypervisor, not sure this is what we need for m1n1
<jeffmiw>
I see a thin hypervisor like a layer that will control the hw if needed to stop, dump memory, decide memory allocation, could intercept interrupts, ..
<jeffmiw>
I was more thinking about things like xen or kvm for instance
<arnd>
jeffmiw: right, rustvmm is a set of library that can do different parts of the whole solution, but I suppose the part you need most is probably one that is not there