0358c9c775
fix(power-trap-eacces): gracefully handle hypercall errors in power management ( #325 )
...
* daemon: reenable built-in power management policy
* xenruntime: gracefully handle power management errors
2024-08-13 08:22:05 +00:00
6bf3741ec9
chore(o11y): add more debug logs to daemon & runtime ( #318 )
...
This change adds debug log lines to make it easier to tell where issues
are occuring during startup.
2024-08-08 19:11:51 +00:00
5ee1035896
feature(krata): rename guest to zone ( #266 )
2024-07-19 03:47:18 +00:00
b2dd4af09b
chore(powermgmt): disable for now as a hackfix ( #242 )
...
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org >
2024-07-10 03:47:02 +00:00
fe8e1d5521
feature(oci): add configuration value for oci seed file ( #220 )
2024-07-01 19:36:21 +00:00
0e64d4ea79
feature(power-management-defaults): set an initial power management policy ( #219 )
...
The default policy enables performance mode and SMT.
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
2024-07-01 03:37:17 +00:00
a79320b4fc
Power management core functionality ( #217 )
...
* feat(power-management-core): add core power management control messages for kratad
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): expose xen hypercall client publicly
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): add indexmap to kratart crate dependencies
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): implement power management core in kratart
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): bubble up runtime context in daemon/control service
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): expose performance/efficiency core data in protobuf
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): fix up some protobuf message names
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): fix up performance core heuristic
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): implement GetHostCpuTopology RPC
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): hackfix to get sysctls working with tokio
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): borrow the PowerManagementContext when calling functions belonging to it
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): remove GetHostPowerManagementPolicy RPC for now
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): implement SetHostPowerManagementPolicy RPC
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): add cpu-topology command
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* feat(power-management-core): appease format checking
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
* fix(runtime): cpu topology corrections
---------
Signed-off-by: Ariadne Conill <ariadne@ariadne.space >
Co-authored-by: Alex Zenla <alex@edera.dev >
2024-06-29 15:43:08 -07:00
fc18bc6a18
feat(runtime): concurrent ip allocation ( #151 )
...
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.
2024-05-14 18:29:12 +00:00
84920a88ab
feat: pci passthrough ( #114 )
...
* feat: pci passthrough
* feat: guest device management
* feat: addons mounting and kernel modules support
* feat: more pci work
* fix: kernel build squashfs fixes
* fix: e820entry should be available on all platforms
2024-04-29 17:02:20 +00:00
82576df7b7
feat: implement kernel / initrd oci image support ( #103 )
...
* feat: implement kernel / initrd oci image support
* fix: implement image urls more faithfully
2024-04-22 19:48:45 +00:00
38e892e249
feat: idm v2 ( #102 )
...
* feat: rebuild idm to separate transport from content
* feat: fast guest lookup table and host identification
2024-04-22 04:00:32 +00:00
8135307283
feat: oci concurrency improvements ( #95 )
...
* feat: implement improved and detailed oci progress indication
* feat: implement on-disk indexes of images
* oci: utilize rw-lock for increased cache performance
2024-04-16 16:29:54 +00:00
89055ef77c
feat: oci compliance work ( #85 )
...
* 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
2024-04-15 17:24:14 +00:00
6d07112e3d
feat: implement oci image progress ( #64 )
...
* feat: oci progress events
* feat: oci progress bars on launch
2024-04-12 18:09:26 +00:00
5e16f3149f
feat: guest metrics support ( #46 )
...
* 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
2024-04-12 07:34:46 +00:00
5ad2e40a7b
krata: reimplement console to utilize channels, and provide logs support
2024-04-02 08:57:34 +00:00
8dd3cc7692
krata: work on parallel reconciliation
2024-04-02 00:56:18 +00:00
bdb91a6cb3
krata: restructure packages for cleanliness
2024-03-30 06:21:34 +00:00