Replies: 7 comments 5 replies
-
|
This has been discussed before but I would definitely like if the new version implemented proper cleanup of VM resources so that the entrypoint function doesn't just exit the process but instead gracefully returns to the caller. I suppose this might already be in the milestone but just wanted to mention it explicitly. It would simplify some use cases where additional custom cleanup is needed after a VM terminates. As a workaround I currently have to spawn a child process in my solution. |
Beta Was this translation helpful? Give feedback.
-
|
I would like to see the option for the host program to have the option to run the microvm and get back a handle to it, instead of the library systematically
This would represent somewhat of a philosophical shift but worth considering. |
Beta Was this translation helpful? Give feedback.
-
|
I would love it if the host program could supply a memory range to the library that would act as the |
Beta Was this translation helpful? Give feedback.
-
|
I think it would be great if the embedding program could expose host filesystem virtio-fs mounts as read-only. A pie-in-the sky wish was if we had further sophistication to have a sort of overlay-style option where we could even have the delta layer in size-constrained memory. In that world, locking it and snapshotting just the delta would be super efficient and it would guard against guests exhausting host disk space when running untrusted workloads. |
Beta Was this translation helpful? Give feedback.
-
|
Not strictly related to libkrun, but for krunvm it would be nice to have the option of mirroring the host system it finds itself in as-is. This would allow to bypass the OCI spec and rely on more CLI friendly tooling such as bubblewrap/bwrap: https://github.com/containers/bubblewrap for example This would also be friendly for testing and commands/do.rs would be a good rust example. |
Beta Was this translation helpful? Give feedback.
-
|
One of the things, that we currently don't handle well is returning errors from API functions. We are limited to just the errors defined by As mentioned we want to also have a Rust API for version 2.x, but we still want to keep the C API. In both versions we should return a rich error type, with our custom list of error codes. The error type can be something similar to The error type should contain an integer describing the error code, that can be programmatically checked and a string that is meant to be reported to the user/developer. The string should be optionally heap allocated, because we might want to return a custom formatted string. (If the string is static, it doesn't need to be heap allocated and can be returned based on matching on the error code like with errno). To access the error msg you would call a function which would either lookup the static string in a table or return the formatted error msg. |
Beta Was this translation helpful? Give feedback.
-
|
Host-injected, pluggable virtio-fs drivers or hooks I think it would be quite compelling if the host app were able to register a I think the key values to this would be the following:
On the other hand, I acknowledge that this is a pretty huge new surface area to start supporting. Would it be ergonomic / feasible in the c api or just at the rust crate level? I don't know enough of either to have an informed opinion. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
We plan to start working on 2.x on 2026Q1, with the goal of releasing it by 2026Q3. Being a major version, we're free to break the API and the behavior of the library in ways that simply aren't possible on minor releases.
We know for sure we're going to:
rutabaga_gfx, and potentially other crates.We'd like to invite everyone in our Community to provide ideas of things they would like to see implemented in 2.x. If you have a cool proposal, please let us know here! 😁
Beta Was this translation helpful? Give feedback.
All reactions