CCing qemu-s390x.
On 01.09.20 17:00, Marc Hartmayer wrote: > This patch series is about enabling virtio-fs on s390x. For that we need > + some shim code (first patch), and we need > + libvhost-user to deal with virtio endiannes for non-legacy virtio > devices as mandated by the spec. > > How to use? > > For general instructions how to use virtio-fs (on x86) please have a > look at https://virtio-fs.gitlab.io/howto-qemu.html. Most of the > instructions can also be applied on s390x. > > In short: > > 1. Install self-compiled QEMU with this patch series applied > 2. Prepare host and guest kernel so they support virtio-fs > > Start virtiofsd on the host > > $ virtiofsd -f --socket-path=/tmp/vhostqemu -o source=/tmp/shared > > Now you can start QEMU in a separate shell on the host: > > $ qemu-system-s390x -machine > type=s390-ccw-virtio,accel=kvm,memory-backend=mem \ > -object > memory-backend-file,id=mem,size=2G,mem-path=/dev/shm/virtiofs,share=on,prealloc=on,prealloc-threads=1 > \ > -chardev socket,id=char0,path=/tmp/vhostqemu -device > vhost-user-fs-ccw,queue-size=1024,chardev=char0,tag=myfs \ > -drive if=virtio,file=disk.qcow2 \ > -m 2G -smp 2 -nographic > > Log into the guest and mount it > > $ mount -t virtiofs myfs /mnt > > Changelog: > v1 -> v2: > - rebased > - patch 1: > + changed to Meson build. I kept the r-b from Conny since this > change seems to be straightforward to me. > - patch 2: > + added r-b from Michael > + added comment from Conny > RFC v2 -> v1: > - patch 1: > + Added `force_revision_1 = true` (Conny) > + I didn't add the r-b from Stefan Hajnoczi as I've added the > changes suggested by Conny > - squashed patches 2 and 3: > + removed assertion in performance critical code path (Stefan) > + dropped all dead code (Stefan) > + removed libvhost-access.h > > RFC v1 -> RFC v2: > + rebased > + drop patch "libvhost-user: print invalid address on vu_panic" as it's not > related to this series > + drop patch "[RFC 4/4] HACK: Hard-code the libvhost-user.o-cflags for > s390x" > + patch "virtio: add vhost-user-fs-ccw device": replace qdev_set_parent_bus > and object_property_set_bool by qdev_realize > + patch "libvhost-user: handle endianness as mandated by the spec": > Drop support for legacy virtio devices > + add patch to fence legacy virtio devices > > Halil Pasic (1): > virtio: add vhost-user-fs-ccw device > > Marc Hartmayer (1): > libvhost-user: handle endianness as mandated by the spec > > contrib/libvhost-user/libvhost-user.c | 77 +++++++++++++++------------ > hw/s390x/meson.build | 1 + > hw/s390x/vhost-user-fs-ccw.c | 75 ++++++++++++++++++++++++++ > 3 files changed, 119 insertions(+), 34 deletions(-) > create mode 100644 hw/s390x/vhost-user-fs-ccw.c >