On 3/3/23 7:06 PM, Elliot Berman wrote:
Gunyah is a Type-1 hypervisor independent of any high-level OS kernel, and runs in a higher CPU privilege level. It does not depend on any lower-privileged OS kernel/code for its core functionality. This increases its security and can support a much smaller trusted computing base than a Type-2 hypervisor. Gunyah is an open source hypervisor. The source repo is available at https://github.com/quic/gunyah-hypervisor.
I've done a pretty detailed review again, and got further along than I did last time. Things are definitely looking better, but I have found some bugs that need to be addressed. I also make a lot of comments about grouping certain sets of definitions into enumerated types. Also I tend to notice when things aren't done consistently, and I mention that a lot. There are silly suggestions all over about alignment of things--these are mainly to make the code look prettier, though that's a matter of opinion. I still prefer having lines generally closer to 80 columns wide, but I've already mentioned that... I really focused on the code, and not the documentation. In fact I didn't even pay much attention to your patch headers either. I did not review the SCM calls yet. So in summary I have not reviewed patches 1, 2, 16, 17, and 26. I try to look at everything in my next review, which I hope will be final (or very close). -Alex
The diagram below shows the architecture. :: VM A VM B +-----+ +-----+ | +-----+ +-----+ +-----+ | | | | | | | | | | | EL0 | APP | | APP | | | APP | | APP | | APP | | | | | | | | | | | | +-----+ +-----+ | +-----+ +-----+ +-----+ ---------------------|------------------------- +--------------+ | +----------------------+ | | | | | EL1 | Linux Kernel | | |Linux kernel/Other OS | ... | | | | | +--------------+ | +----------------------+ --------hvc/smc------|------hvc/smc------------ +----------------------------------------+ | | EL2 | Gunyah Hypervisor | | | +----------------------------------------+ Gunyah provides these following features.
. . .