Cross endian environments are not working
On ppc64le, virtiofsd doesn't seem to work properly when host and guest endianness differ.
When running a big endian guest on a little endian host, the virtiofs filesystem can be mounted but isn't accessible.
I have, for instance '/var/cache/distiles' exported to a VM: '/usr/libexec/virtiofsd --socket-group=kvm --announce-submounts --inode-file-handles=never --xattr --log-level debug --allow-direct-io --seccomp log --cache auto --socket-path=/run/virtiofsd/vfsd-distfiles.sock --shared-dir /var/cache/distfiles'
within the VM I get:
$ mount|grep distfiles 'vfsd-distfiles on /var/cache/distfiles type virtiofs (rw,relatime)'
$ df 'df: /var/cache/distfiles: Connection refused'
$ ls -l /var/cache 'd????????? ? ? ? ? ? distfiles'
As you can see, the permissions / ownerships are completely messed up and they cannot be altered via chmod / chown.
The virtiofsd log on the host shows this error: 'DEBUG virtiofsd::server] Replying ERROR, header: OutHeader { error: -12 (Cannot allocate memory), unique: 144115188075855872, len: 16 }'