- 
    Bug 
- 
    Resolution: Done
- 
    Normal 
- 
    rhel-9.5
- 
        No
- 
        Moderate
- 
        CustomerScenariosInitiative
- 
        rhel-virt-windows
- 
        ssg_virtualization
- 
        20
- 
        8
- 
        QE ack
- 
        False
- 
        False
- 
        
- 
        Yes
- 
        Red Hat Enterprise Linux
- 
        None
- 
        None
- 
        RegressionOnly
- 
        Unspecified Release Note Type - Unknown
- 
        
- 
        x86_64
- 
        Windows
- 
        None
What were you trying to do that didn't work?
I have a linux host with an ext4 file system and a Windows 10 guest running on it, after reading 1 million files on the virtiofs shared dir, the mount disconnected and virtiofsd quit.
Please provide the package NVR for which bug is seen:
Host:
virtiofsd-1.11.1-1.el9.x86_64
qemu-kvm-9.0.0-3.el9.x86_64
edk2-ovmf-20240524-2.el9.noarch
seabios-bin-1.16.3-2.el9.noarch
kernel-5.14.0-494.el9.x86_64
Guest:
Win10-64bit, build 19041
virtio-win-prewhql-0.1-253
winfsp-2.0.23075.msi
How reproducible:
2/2
Steps to reproduce
1. prepare a shared dir on top of ext4 on host
dd if=/dev/zero of=./ext4_image.img bs=1M count=102400
mkfs.ext4 ext4_image.img
mount -o loop ext4_image.img /root/avocado/data/avocado-vt/virtio_fs_test/
2. start virtiofsd daemon with the shared dir.
/usr/libexec/virtiofsd --socket-path=/var/tmp/avocado-vt-vm1-fs-virtiofsd.sock -o ource=/root/avocado/data/avocado-vt/virtio_fs_test/ -o cache=auto
3. start win10 64bit VM with qemu-kvm
 -m 16384,maxmem=20G \
  -object '
'  \
  -smp 24,maxcpus=24,cores=12,threads=1,dies=1,sockets=2  \
  -numa node,memdev=mem-mem1,nodeid=0  \
  -chardev socket,id=char_virtiofs_fs,path=/var/tmp/avocado-vt-vm1-fs-virtiofsd.sock \
  -device '
' \
  -device '
' \
  -device '
' \
4. create folders on shared dir
for i in 
; do mkdir F$i; done
cd F1 ; for i in 
; do mkdir A$i; done
tree
.
├── F1
│   ├── A1
│   ├── A2
│   ├── A3
│   └── A4
├── F2
└── F3
5. create 300k files in their subdirectories.
for j in F2 F3; do for i in 
for j in A1 A2 A3 A4; do for i in {1..307200}
; do dd if=/dev/urandom of=./F1/$j/file-$j-$i.txt bs=128 count=1; done; done
6. inside VM, start virtiofs service and get the shared volum
7. run `dir /s /b F2; dir /s /b F1` and etc, everything works, no disconnect, no drop.
8. wait the dir cmd complete, and re-read the mount dir
Expected results
The mount still works.
Actual results
The mount was disconnected and virtiofsd quit.