-
Notifications
You must be signed in to change notification settings - Fork 0
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
[FEATURE] Instantiate and run MPS in pKVM #35
Comments
I've started on this on the 35-mps-in-pkvm branch. So far I've written a runner that will start on boot, mount an application partition, and start up processes or VMs as indicated in the application's config file. I've run a simple "hello world" test, and next I'm planning to test "hello world" in nested VMs, mimicking the setup we plan to use for MPS. |
I successfully connected MPS in the guest via UARTs to a Unix socket in the base system, and I was able to run one of the MPS test cases against it in that configuration. Some more work is needed to be able to reset the MPS between test cases without shutting down and restarting the entire VM. |
I've implemented a new MPS command I've gotten many of the tests to pass with MPS running inside the VM. I had some issues with the test suite at first, but eventually discovered that the tests require a specific build configuration: I'm currently investigating some issues with the QEMU UART that cause large delays (> 10 seconds) between sending the data and the MPS receiving it. These delays increase over time as the test suite runs until eventually the tests start timing out. |
Regarding the test build - here is how MPS is built and tested in the CI |
With #53, the test suite passes with the tests running on the base system and the MPS running inside the guest VM, with the two communicating via an emulated UART. My guess is that the communication delays I was seeing previously were due to contention on the display lock causing the refresh display ( I'm now working on cleaning up the setup code for this so I can open a PR. |
I tried running the MPS test suite without QUICK=1 as a final test of the MPS-on-pKVM setup, and it ran into more issues with UART delays. It's failing in However, the test suite does work when both the tests and MPS are run inside the guest VM. All tests succeed up to the errors mentioned in #56. I will add some automation for this alternative setup and open a PR for that tomorrow. |
Summary
Run the MPS in pKVM
baseline.img
(R/W) andMPS.img
(R)baseline.img
(R/W) and aconfig.img
(R) that contains the JSON/XML config file, and the respective binariesDo
mps-test
andmps-build
CI jobs)The text was updated successfully, but these errors were encountered: