IVSHMEM device doesn't work for sharing memory with virtiofsd Description of problem: Trying to share a folder on the host to the guest with `virtiofsd` using the `ivshmem-plain` device doesn't work (for memory sharing), while using a NUMA node (with `-numa node,memdev=mem`) works just fine. Steps to reproduce: 1. Install `virtiofsd` 2. Run `/usr/libexec/virtiofsd --socket-path=/tmp/vhostqemu --shared-dir=$HOME --cache always` as a regular user (or with another shared directory, it doesn't matter) 3. Run QEMU with the aforementioned command line as a regular user 4. Wait a bit for the OS to load and `virtiofsd` should error out Additional information: `virtiofsd` logs: ``` [2024-05-09T19:49:15Z WARN virtiofsd::sandbox] Couldn't set the process uid as root: -1 [2024-05-09T19:49:15Z WARN virtiofsd::sandbox] Couldn't set the process gid as root: -1 [2024-05-09T19:49:15Z INFO virtiofsd] Waiting for vhost-user socket connection... [2024-05-09T19:49:16Z INFO virtiofsd] Client connected, servicing requests [2024-05-09T19:49:22Z ERROR virtiofsd] Waiting for daemon failed: HandleRequest(ReqHandlerError(Custom { kind: Other, error: MissingMemoryMapping })) ``` QEMU logs (after virtiofsd errors out and exits): ``` qemu: Failed to read msg header. Read -1 instead of 12. Original request 0. qemu: Failed to write msg. Wrote -1 instead of 20. qemu: vhost VQ 1 ring restore failed: -22: Invalid argument (22) qemu: Failed to set msg fds. qemu: vhost VQ 0 ring restore failed: -22: Invalid argument (22) qemu: Error starting vhost: 5 qemu: Failed to set msg fds. qemu: vhost_set_vring_call failed 22 qemu: Failed to set msg fds. qemu: vhost_set_vring_call failed 22 qemu: Unexpected end-of-file before all data were read ```