Bug 1966580

Summary: Starting a VM with a virtiofs filesystem fails on RHEL-9-0 host
Product: Red Hat Enterprise Linux 9 Reporter: Katerina Koukiou <kkoukiou>
Component: qemu-kvmAssignee: Stefan Hajnoczi <stefanha>
qemu-kvm sub component: QMP Monitor and CLI QA Contact: FuXiangChun <xfu>
Status: CLOSED CURRENTRELEASE Docs Contact:
Severity: unspecified    
Priority: unspecified CC: ddepaula, jinzhao, jtomko, juzhang, mrezanin, phrdina, stefanha, virt-maint, xchen, xiagao, yfu
Version: 9.0Keywords: Triaged
Target Milestone: beta   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-6.0.0-9.el9 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-01-07 13:33:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1804196, 1957194    
Bug Blocks:    

Description Katerina Koukiou 2021-06-01 12:52:54 UTC
Description of problem:

I have a VM with file backed shared memory and a virtiofs. Starting the VM fails with:

operation failed: Unable to find a satisfying virtiofsd 

Version-Release number of selected component (if applicable):

qemu-kvm-common-6.0.0-1.el9.x86_64
libvirt-daemon-7.0.0-4.el9.x86_64

How reproducible:
Always

Steps to Reproduce:
1.
Add:
  <memoryBacking>
    <access mode='shared'/>
  </memoryBacking>

  <filesystem type='mount' accessmode='passthrough'>
    <driver type='virtiofs'/>
    <source dir='/tmp/dir1/'/>
    <target dir='dir1'/>
  </filesystem>

2. Attempt to start the guest

Actual results:
VM fails to start:
operation failed: Unable to find a satisfying virtiofsd 

Additional info:

/usr/libexec/virtiofsd file exists

Comment 1 Pavel Hrdina 2021-06-01 13:03:45 UTC
Libvirt looks for virtiofsd JSON description file in the following paths:

   /usr/share/qemu/vhost-user/
   /etc/qemu/vhost-user/
   ~/.config/qemu/vhost-user/

which is true for upstream QEMU or for example the one shipped in Fedora but in RHEL the files installed by package are in different directory:

   /usr/share/qemu-kvm/vhost-user/

and that results in the error mentioned in BZ description.


Since these files are similar to UEFI firmware JSON description which are in RHEL shipped in the same directory as in upstream (/usr/share/qemu/firmware) I think we should do the same for vhost-user JSON description files.

Comment 2 xiagao 2021-06-07 09:08:14 UTC
It's like https://bugzilla.redhat.com/show_bug.cgi?id=1804196 for RHEL8.
Change componet.

Comment 3 John Ferlan 2021-07-08 15:53:42 UTC
Updating ownership to match the similar (but not cloned from) RHEL-AV bug 1804196.

If this is the same problem, then once that bug is merged/built - update the Dev Whiteboard w/ the downstream build reference and move this to POST to be merged into 9-Beta

Comment 4 Stefan Hajnoczi 2021-07-15 12:31:15 UTC
To be merged in 9-Beta. Fix already present in RHEL-AV 8.5.

Comment 6 John Ferlan 2021-08-16 13:19:22 UTC
Setting ITM=26 to get release+

Comment 8 Danilo de Paula 2021-08-16 20:45:53 UTC
Mrezanin: can you answer that question? ^

Comment 10 Yanan Fu 2021-08-19 09:34:37 UTC
QE bot(pre verify): Set 'Verified:Tested,SanityOnly' as gating/tier1 test pass.

Comment 11 xiagao 2021-08-24 06:22:42 UTC
Test the following pkg.
qemu-kvm-6.0.0-11.el9.x86_64
qemu-virtiofsd-6.0.0-11.el9.x86_64

# rpm -ql qemu-virtiofsd-6.0.0-11.el9.x86_64
/usr/lib/.build-id
/usr/lib/.build-id/95
/usr/lib/.build-id/95/05dd2ec972b5979b400409575cba2d92cb6d1d
/usr/libexec/virtiofsd
/usr/share/man/man1/virtiofsd.1.gz
/usr/share/qemu/vhost-user/50-qemu-virtiofsd.json


virtiofsd JSON description file is shipped in /usr/share/qemu/vhost-user/.

Verify this bz.

Comment 12 FuXiangChun 2021-08-25 03:06:27 UTC
append a comments. 

1.Reproduced with qemu-kvm-common-6.0.0-7.el9.x86_64.rpm

# rpm -qpl qemu-kvm-common-6.0.0-7.el9.x86_64.rpm |grep virtiofsd
/usr/libexec/virtiofsd
/usr/share/man/man1/virtiofsd.1.gz
/usr/share/qemu-kvm/vhost-user/50-qemu-virtiofsd.json

2.Verified with qemu-virtiofsd-6.0.0-12.el9.x86_64.rpm

# rpm -qpl qemu-virtiofsd-6.0.0-12.el9.x86_64.rpm |grep virtiofsd
/usr/libexec/virtiofsd
/usr/share/man/man1/virtiofsd.1.gz
/usr/share/qemu/vhost-user/50-qemu-virtiofsd.json

# rpm -qf /usr/share/qemu/vhost-user/50-qemu-virtiofsd.json
qemu-virtiofsd-6.0.0-12.el9.x86_64

Comment 13 John Ferlan 2022-01-07 13:33:35 UTC
Bulk update - closing 9-Alpha and 9-Beta bugs that were in VERIFIED