Skip to content

feat: add configurable vhost option for monitors#415

Open
vinayakjeet wants to merge 3 commits intourunc-dev:mainfrom
vinayakjeet:feature/vhost-config
Open

feat: add configurable vhost option for monitors#415
vinayakjeet wants to merge 3 commits intourunc-dev:mainfrom
vinayakjeet:feature/vhost-config

Conversation

@vinayakjeet
Copy link

@vinayakjeet vinayakjeet commented Jan 29, 2026

Description

This change adds a configurable vhost option to monitors.
When enabled for QEMU, it allows the use of vhost-net to improve network performance.

Related issues

Fixes

How was this tested?

  • make lint
  • make test_ctr

LLM usage

Yes – LLMs were used for drafting code and clarifying implementation details.
All changes were reviewed and verified manually.

Checklist

  • I have read the contribution guide.
  • The linter passes locally (make lint).
  • The e2e tests of at least one tool pass locally (make test_ctr).
  • If LLMs were used: I have read the LLM policy.

@netlify
Copy link

netlify bot commented Jan 29, 2026

Deploy Preview for urunc canceled.

Name Link
🔨 Latest commit 84e4c0d
🔍 Latest deploy log https://app.netlify.com/projects/urunc/deploys/69846339a7cae80008509ef6

This change adds a 'vhost' configuration option to monitors. When enabled, it allows the use of vhost-net for improved network performance in QEMU.

Fixes: urunc-dev#410
Signed-off-by: vinayakjeet <vinayakjeetog@gmail.com>
@vinayakjeet
Copy link
Author

This PR does not modify any files under /docs, so the MkDocs CI job was skipped as expected due to no documentation changes.

Kindly requesting a review from @cmainas and @ananos when you have time. Thank you!

@cmainas
Copy link
Contributor

cmainas commented Jan 30, 2026

Hello @vinayakjeet ,

thank you for your contribution. Please fill the PR template correctly and fully. Also, please test your changes before submitting a PR.

Signed-off-by: vinayakjeet <vinayakjeetog@gmail.com>
@vinayakjeet
Copy link
Author

vinayakjeet commented Feb 1, 2026

@cmainas

Testing

The following tests were run locally on WSL2 (Ubuntu 24.04, amd64):

  • make lint — ✅ passed

I attempted to run make test_ctr, but the tests fail in WSL due to
containerd snapshotter and mount permission limitations
(e.g. devmapper snapshotter not loaded, operation not permitted),
which require a native Linux environment with full kernel support.

All setup steps (Docker, containerd, systemd) were verified locally.
Please let CI provide the authoritative result for test_ctr.

Let me know if you would like me to re-test this on a native Linux host.

Copy link
Contributor

@cmainas cmainas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @vinayakjeet ,

thank you for this PR, I have added a few initial comments. However, you can at least execute the tests that do not use devmapper and specifically check if the new option in the configuration does work as expected. In the e2e test cases you can see which are the ones that do not require devmapper https://github.com/urunc-dev/urunc/blob/main/tests/e2e/test_cases.go

You can run these tests with make test_ctr_{name_of_test}, same for any other tool

- Add explicit warning log when ParseBool fails for vhost value
- Simplify VMMFactory.createFunc signature to pass vhost bool instead of full MonitorConfig

Signed-off-by: vinayakjeet <vinayakjeetog@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add configurable option for vhost

2 participants