<kgarrington>
I hope that means that we can have macOS KVM guests sooner rather than later
kgarrington has quit [Remote host closed the connection]
<sven>
probably easier to get a vmapple kernel running in kvm which doesn't require sprr/gxf. but then there's still the issue that macos requires a gpu to work
<marcan>
IIRC someone already tried that and it works? like way back
<sven>
i think it should just work at least in text mode
<marcan>
yeah, exactly
<marcan>
but yeah, with the GPU issue, that's unfortunately not that useful for actually running macOS
<marcan>
and SPRR/GXF emu doesn't really help
<marcan>
it just changes the problem from "implement paravirtual rust" to "implement virtual AGX"
<marcan>
both are kind of... difficult
<marcan>
er, paravirtual metal
<marcan>
I love what my brain did there :')
<sven>
:D
<marcan>
also, that is SPRR/GXF *emulation*
<marcan>
there is no way to implement SPRR/GXF *virtualizatino* sanely
<marcan>
already went through all that with my hypervisor
<marcan>
not practical since AArch64 has no mechanism to trap undefined instructions to EL2
<marcan>
you need to do some horrible vector table patching at the very least, and it still would be hard to get perfect
<marcan>
and SPRR is also impossible to sanely do, unless you just ignore the extra permission restrictions (which will probably work)
<marcan>
so it probably makes more sense to ignore all that and just target the vmapple kernel... and have fun implementing paravirtual metal
maxkofler has quit [Read error: Connection reset by peer]
maxkofler has joined #asahi-dev
maxkofler has quit []
amarioguy has quit [Ping timeout: 480 seconds]
amarioguy has joined #asahi-dev
<kettenis>
marcan: I also spotted some (minor) issues with the DTs; what is your preferred way for me to provide fixes for these?
MajorBiscuit has quit [Ping timeout: 480 seconds]
MajorBiscuit has joined #asahi-dev
<marcan>
kettenis: you can just point me at fix commits if it's trivial stuff (even in u-boot), or just do them on top of the asahi branch and point me at them that way
<marcan>
not that I've explicitly thought this through too much, but it seems we've largely settled on a "people work on their own branches and poke a stick at me when they want something merged" model for now :)
<marcan>
(nb: I didn't get anything done today because I had a bit of a health scare... I'm okay now, but if I disappear or have to take a break some days in the coming weeks, that's why)
<kettenis>
take the time you need; we need a healthy marcan to keep carrying the torch!
yuyichao has quit [Ping timeout: 480 seconds]
<maz>
marcan: code can wait forever. your health can't. just rest.
<marcan>
well, kidney stones seem to be quite unpredictable, so I don't plan on twiddling my thumbs in bed all day when I'm feeling fine either... but yeah, if it hits me again, there's no way I'm getting out of bed until it's over.
<tpw_rules>
do you need a drink water bot in your stream
<marcan>
I was actually thinking about that
<marcan>
might just set up a pile of alarms tbh
<marcan>
stream or no stream :)
<j`ey>
better get the RTC alarm working then! :P
<marcan>
lol :D
yuyichao has joined #asahi-dev
<marcan>
there we go, thank you Home Assistant. I just made it toggle my keyboard LED lighting (which just kind of lights up my desk) once an hour. nice and unobtrusive.
off^ has joined #asahi-dev
the_lanetly_052___ has joined #asahi-dev
the_lanetly_052__ has quit [Ping timeout: 480 seconds]
<kettenis>
the first fixup is simply a pasto; the second is a leftover from an earlier approach to do cpufreq stuff
<kettenis>
(I can turn this into a PR if that helps)
<marcan>
kettenis: thanks, fixed in local bits/, will be in the next merge (once I work out the module issues I'm looking at)
<kettenis>
great; this doesn't really affect things, but probably needed fixup before upstreaming
<marcan>
yeah
amarioguy has joined #asahi-dev
<amarioguy>
btw on interrupt handling: do you all just use the AIC directly in Asahi?
<j`ey>
what do you mean by directly?
<amarioguy>
like do you all just use the AIC as is in Asahi or do you work around it by emulating a GIC or something similar?
<j`ey>
no the AIC is used
<j`ey>
drivers/irqchip/irq-apple-aic.c
<amarioguy>
gotcha
amarioguy has quit [Remote host closed the connection]
<maz>
also, it is pretty hard to emulate a GIC on top of AIC without resorting to virtualisation. the life cycle of the interrupts on AIC really doesn't match the GIC's.
<marcan>
love it when I trace my module issue to a deadlock in Linux's OF core
<alyssa>
nice
<marcan>
... caused by calling printk with an OF format specifier while holding the OF spinlock earlier in the call chain