-
Notifications
You must be signed in to change notification settings - Fork 21
Conversation
Signed-off-by: Wei Liu <liuwe@microsoft.com>
The pipeline failed due to mutually exclusive features ( I think what I need is:
It would be good if you can have a look at the change before I take on the work to fix the pipeline. If adding mutually exclusive features is not popular I will need to come up with something else. |
@liuw this was a problem that I was facing when implementing mutually exclusive features. The way I fixed it is to choose a default feature when both are specified. Here is the commit that was doing that: rust-vmm/kvm-bindings@190dbaa I think it makes sense to not have both features enabled at the same time. At the CI level, you'll also need a custom pipeline to run |
Rename KvmSetDeviceAttr to SetDeviceAttr and modify private helper functions to work with both hypervisors. Signed-off-by: Wei Liu <liuwe@microsoft.com>
Generally speaking functions take RawFd should be marked as unsafe. device_add_group and device_del group are such functions. Instead of marks them as unsafe, we can make these two functions take a reference to VfioGroup. This is far more elegant. Signed-off-by: Wei Liu <liuwe@microsoft.com>
@andreeaflorescu I added a |
Yes, we need to configure it in Buildkite. Once we do the configuration no other PR will pass the tests until we merge this one. Should we configure it now or do you want to merge anything else before? |
Rust does not support mutually exclusive features. Buildkite enables all features. These two factors combined causes pipeline failures. Turn the feature gates in code a bit. Whenever "kvm" is specify, surface KVM's definitions. Make available MSHV if and only if "mshv" is specified. Add custom tests for MSHV. Signed-off-by: Wei Liu <liuwe@microsoft.com>
The other in flight PR is your dependabot PR, I suppose it should be rather easy to adapt to the new pipeline configuration? If you can do it now that would be great, but I'm not sure how you want the other one to be handled. |
The other PR can wait, we can merge this one first if there are not other PRs in flight. I'll setup buildkite today. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added the Buildkite configuration and now the custom tests are also running: https://buildkite.com/rust-vmm/vfio-ioctls-ci/builds/58#404de176-1fbc-421d-b126-f82a9f18d1b3
These two patches add device fd support for MSHV to vfio-ioctls.
Note that patch is still needs one modification to point to rust-vmm's repository. It is pointing to a local path for MSHV. I will change it once rust-vmm/mshv#11 is merged.