* wip hvm
* feat: move platform stuff all into it's own thing
* hvm work
* more hvm work
* more hvm work
* feat: rework to support multiple platforms
* hvm nonredist
* more hvm work
* more hvm work
* pvh work
* work on loading cmdline
* implement initrd loading for pvh
* partially working pvh support
* fix merge issues
* pvh works!
* swap over to pv support
* remove old kernel stuff
* fix support for pv
* pvh is gone for now
* fix(runtime): debug should be respected
* fix(xen): arm64 is currently unsupported, treat it as such at runtime
* fix(examples): use architecture cfg for boot example
* fix(x86): use IOMMU only when needed for passthrough
* chore(build): print kernel architecture during fetch
Previously, krata runtime allowed a single permit when performing operations.
This was necessary because the only IP allocation storage was xenstore, and
the commit of xenstore data happens after allocation. This commit introduces
IpVendor, a service which vends IPv4 and IPv6 addresses to guests using a
linear address strategy within an IP network space. The IpVendor table is
initialized from xenstore, and from there on out, the in-memory table
is the source of truth. This implementation is not perfect, but it will allow
us to lift the single permit limit, allowing guests to start concurrently.
* chore: rework oci crate to be more composable
* feat: image pull is now internally explicit
* feat: utilize vfs for assembling oci images
* feat: rework oci to preserve permissions via a vfs
* feat: initial support for idm send in daemon
* feat: implement IdmClient backend support
* feat: daemon idm now uses IdmClient
* fix: implement channel destruction propagation
* feat: implement request response idm system
* feat: implement metrics support
* proto: move metrics into GuestMetrics for reusability
* fix: log level of guest agent was trace
* feat: metrics tree with process information