qemu-virtiofs: Update to qemu 5.0 + virtiofs + dax#1097
Conversation
Update to qemu 5.0.x with support for virtiofs + dax. Depends-on: github.com/kata-containers/packaging#1097 Fixes: #1 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
| ADD qemu/patches/ /root/kata_qemu_patches | ||
| # Apply virtiofs specific patches | ||
| RUN \ | ||
| for patch in $(find /root/kata_qemu_patches/virtiofsd/${QEMU_VIRTIOFS_TAG}/ -name '*.patch'); do\ |
There was a problem hiding this comment.
This doesn't look reliable - I think we need to sort the patches before applying as on #1005.
There was a problem hiding this comment.
Agree with @jodh-intel. We need a more robust approach here.
@jcvenegas Can you explain how you are applying the patches and whats changed.
There was a problem hiding this comment.
Also -- I'm not sure if we need to carry any of the virtiofs patches, at least for 5.0.
There was a problem hiding this comment.
@jodh-intel done now is using sort to apply as you suggested
@amshinde @egernst the patches are applied in the following order
- First look and apply patches specific to the tag for virtiofsd (this is in case we need to fix something before a tag is generated by virtios folks) : Today there is not additional patches
- Look for patches specific to the qemu branch is based and apply them
|
@jcvenegas Since we are moving to 5.0 for the virtiofs kernel, we will also need to disable Instead of checking for the version, you can add that flag for CI running on x86 architecture. cc @devimc |
Update to qemu 5.0.x with support for virtiofs + dax. Depends-on: github.com/kata-containers/packaging#1097 Depends-on: github.com/kata-containers/tests#2737 Fixes: kata-containers#2848 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
experimental QEMU will be updated to qemu 5.0, now CI fails with: ``` failed to set MSR 0x48b to 0x1582e00000000 qemu-virtiofs-system-x86_64: /root/qemu-virtiofs/target/i386/kvm.c:2695: kvm_buf_set_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed.: unknown. ``` Depends-on: github.com/kata-containers/packaging#1097 Depends-on: github.com/kata-containers/runtime#2840 Fixes: kata-containers#2736 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
3054d4a to
55d282b
Compare
|
/test |
Experimental QEMU will be updated to qemu 5.0, not needed to check for qemu version and disable in all the time. Depends-on: github.com/kata-containers/packaging#1097 Depends-on: github.com/kata-containers/runtime#2840 Fixes: kata-containers#2736 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
fb5a0d4 to
b9f4af0
Compare
| git apply "$patch"; \ | ||
| done | ||
|
|
||
| RUN PREFIX="${PREFIX}" /root/configure-hypervisor.sh -s kata-qemu | sed -e 's|--disable-seccomp||g' | xargs ./configure \ |
There was a problem hiding this comment.
I think we should just drop this flag from configure-hypervisor itself. It makes sense to have seccomp at this point.
There was a problem hiding this comment.
Thanks I think that should be fixed in a separete PR for all places we use it.
| RUN \ | ||
| cat VERSION; \ | ||
| stable_branch=$(cat VERSION | awk 'BEGIN{FS=OFS="."}{print $1 "." $2 ".x"}');\ | ||
| for patch in $(find /root/kata_qemu_patches/${stable_branch}/ -name '*.patch'); do\ |
There was a problem hiding this comment.
As soon as you start doing a for loop in a Dockerfile, you know you've gone too far man!
I'll see if I can provide a better suggestion in a bit, but this shouldn't live in the Dockerfile.
There was a problem hiding this comment.
:) yeah does not look nice, I have tried to change to way to do it, please take a look or suggest any other approach
Update to qemu 5.0.x with support for virtiofs + dax. Depends-on: github.com/kata-containers/packaging#1097 Depends-on: github.com/kata-containers/tests#2737 Fixes: kata-containers#2848 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
b9d6ca8 to
8b22ec1
Compare
Update build scripts for qemu-virtiofs. - virtiofs-0.3 patches are not needed - Sync build on how vanilla qemu is built - Apply patches for virtiofsd if any (none today) - Apply patches that are used for the qemu vanilla - Apply patches in order Depends-on: github.com/kata-containers/runtime#2840 Depends-on: github.com/kata-containers/tests#2737 Fixes: github.com/kata-containers/runtime#2848 Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
8b22ec1 to
e1e8577
Compare
|
/test |
| sudo docker build -t "${docker_image}" "${script_dir}" | ||
| DOCKER_CLI="docker" | ||
|
|
||
| if ! command -v docker && command -v podman; then |
There was a problem hiding this comment.
Nit: You might want to add &>/dev/null to both the command calls (here and below) to avoid the paths appearing in build logs?
| DOCKER_CLI="docker" | ||
|
|
||
| if ! command -v docker && command -v podman; then | ||
| DOCKER_CLI="podman" |
Build clh with Podman, allow build the vmm in the Podman CI Virtiofs qemu has to be build as this is requried by clh. Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
e1e8577 to
4e1b572
Compare
|
/test |
|
/AzurePipelines run |
|
Azure Pipelines successfully started running 2 pipeline(s). |
likebreath
left a comment
There was a problem hiding this comment.
LGTM. This PR is required as the dependent PR of kata-containers/runtime#2840.
Update build scripts for qemu-virtiofs
Depends-on: github.com/kata-containers/runtime#2840
Depends-on: github.com/kata-containers/tests#2737
Fixes: github.com/kata-containers/runtime#2848
Signed-off-by: Jose Carlos Venegas Munoz jose.carlos.venegas.munoz@intel.com