Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

neonvm: hacking on adding virtio-fs support #963

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

sharnoff
Copy link
Member

@sharnoff sharnoff commented Jun 16, 2024

virtio-fs v1.11.0 supports live migration (albeit, with some major caveats).

There's maybe some cool opportunities there - figured it's worth playing around with.

Current status: using current vm-deploy fails with QEMU saying

Device vhost-user-fs-device is not migratable, but --only-migratable was specified

We're using an old version of QEMU, but I'm not actually sure if support for migratable vhost-user fs devices has been released yet (if it's even been merged at all!).

More digging required...

See also https://gitlab.com/virtio-fs/virtiofsd/-/merge_requests/206
See also https://www.notion.so/neondatabase/25e6aa0142e94e8fab15fbb2ba237757


Also, included some fixes to issues I noticed; those will be split off into separate PRs.

Currently if we get to the point of calling QEMU, we'll always just exit
as if neonvm-runner was successful. This isn't correct.

At first I thought this might be a regression by #864, but it's actually
much older, originally introduced in #172!
While working on something else, I spotted this in the logs:

{"level":"dpanic","ts":"2024-06-15T18:50:47.809Z","msg":"odd number of arguments passed as key-value pairs for logging",...,"ignored key":"goroutine 501 [running]:\nruntime/debug.Stack()\n\t/usr/local/go/src/runtime/debug/stack.go:24 ..."}
These were used in initial implementations of #887, but not in the final
version that was merged. I must have forgotten to remove them.
virtio-fs v1.11.0 supports live migration (albeit, with some major
caveats).

There's maybe some cool opportunities there - figured it's worth playing
around with.

Current status: using current vm-deploy fails with QEMU saying

  Device vhost-user-fs-device is not migratable, but --only-migratable was specified

We're using an old version of QEMU, but I'm not actually sure if support
for migratable vhost-user fs devices has been released yet (if it's even
been merged at all!).

More digging required...

See also https://gitlab.com/virtio-fs/virtiofsd/-/merge_requests/206
See also https://www.notion.so/neondatabase/25e6aa0142e94e8fab15fbb2ba237757

---

Also, included some fixes to issues I noticed; those will be split off
into separate PRs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant