qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Qemu] how to use viriofs in qemu without NUMA


From: Zhao, Shirley
Subject: RE: [Qemu] how to use viriofs in qemu without NUMA
Date: Tue, 12 Jul 2022 07:06:50 +0000

Hi, all, 

I have another question want to consult you. 
To enable DAX in virtiofs, according to the memu 
https://virtio-fs.gitlab.io/howto-qemu.html. 
I need to add "cache-size=2G" as below. 
-device vhost-user-fs-pci,queue-size=1024,chardev=char0,tag=myfs,cache-size=2G

My qemu command is: 
sudo qemu-system-x86_64 -M pc -cpu host --enable-kvm -smp 2 -m 4G -drive 
if=virtio,file=ubuntu.img -object 
memory-backend-file,id=mem,size=4G,mem-path=/dev/shm,share=on -machine 
q35,memory-backend=mem -chardev socket,id=char0,path=/tmp/vhostqemu -device 
vhost-user-fs-pci,queue-size=1024,chardev=char0,tag=myfs_root,cache-size=2G 
-chardev stdio,mux=on,id=mon -mon chardev=mon,mode=readline -device 
virtio-serial-pci -device virtconsole,chardev=mon -vga none -display none

And virtiofsd command is:
sudo ./virtiofsd --socket-path=/tmp/vhostqemu -o source=/home/shirley/testdir 
-o cache=always

But there is no option of "cache-size" in qemu 6.0, like below. So how to 
enable it? 
qemu-6.0.0$ qemu-system-x86_64 -device vhost-user-fs-pci,help
vhost-user-fs-pci options:
  acpi-index=<uint32>    -  (default: 0)
  addr=<int32>           - Slot and optional function number, example: 06.0 or 
06 (default: -1)
  aer=<bool>             - on/off (default: false)
  any_layout=<bool>      - on/off (default: true)
  ats=<bool>             - on/off (default: false)
  bootindex=<int32>
  chardev=<str>          - ID of a chardev to use as a backend
  event_idx=<bool>       - on/off (default: true)
  failover_pair_id=<str>
  indirect_desc=<bool>   - on/off (default: true)
  iommu_platform=<bool>  - on/off (default: false)
  migrate-extra=<bool>   - on/off (default: true)
  modern-pio-notify=<bool> - on/off (default: false)
  multifunction=<bool>   - on/off (default: false)
  notify_on_empty=<bool> - on/off (default: true)
  num-request-queues=<uint16> -  (default: 1)
  packed=<bool>          - on/off (default: false)
  page-per-vq=<bool>     - on/off (default: false)
  queue-size=<uint16>    -  (default: 128)
  rombar=<uint32>        -  (default: 1)
  romfile=<str>
  romsize=<uint32>       -  (default: 4294967295)
  tag=<str>
  use-disabled-flag=<bool> -  (default: true)
  use-started=<bool>     -  (default: true)
  vectors=<uint32>       -  (default: 4294967295)
  virtio-backend=<child<vhost-user-fs-device>>
  virtio-pci-bus-master-bug-migration=<bool> - on/off (default: false)
  x-ats-page-aligned=<bool> - on/off (default: true)
  x-disable-legacy-check=<bool> -  (default: false)
  x-disable-pcie=<bool>  - on/off (default: false)
  x-ignore-backend-features=<bool> -  (default: false)
  x-pcie-deverr-init=<bool> - on/off (default: true)
  x-pcie-extcap-init=<bool> - on/off (default: true)
  x-pcie-flr-init=<bool> - on/off (default: true)
  x-pcie-lnkctl-init=<bool> - on/off (default: true)
  x-pcie-lnksta-dllla=<bool> - on/off (default: true)
  x-pcie-pm-init=<bool>  - on/off (default: true) 


-----Original Message-----
From: Zhao, Shirley 
Sent: Friday, July 8, 2022 8:40 AM
To: Dr. David Alan Gilbert <dgilbert@redhat.com>
Cc: Thomas Huth <thuth@redhat.com>; qemu-devel@nongnu.org; 
virtio-fs@redhat.com; Stefan Hajnoczi <stefanha@redhat.com>
Subject: RE: [Qemu] how to use viriofs in qemu without NUMA

Yes, the qemu version is too old. 
My previous qemu version is 4.2, and I upgraded it into 6.0, and it worked now. 
Thanks a lot. 

- Shirley 

-----Original Message-----
From: Dr. David Alan Gilbert <dgilbert@redhat.com>
Sent: Tuesday, July 5, 2022 5:37 PM
To: Zhao, Shirley <shirley.zhao@intel.com>
Cc: Thomas Huth <thuth@redhat.com>; qemu-devel@nongnu.org; 
virtio-fs@redhat.com; Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu] how to use viriofs in qemu without NUMA

* Zhao, Shirley (shirley.zhao@intel.com) wrote:
> Thanks for the information. 
> Yes, I also found the memory backend options on s390x, and also copy the 
> command to x86, but failed. 
> 
> The following is the command used to start qemu + virtiofs + ubuntu 20.04. 
> One is worked well using NUMA, another one is failed without NUMA. 
> Is there anything wrong? 
> 
> The worked one with NUMA options: 
> 
> qemu-system-x86_64 -M pc -cpu host --enable-kvm -smp 2 -m 4G -object 
> memory-backend-file,id=mem,size=4G,mem-path=/dev/shm,share=on -numa 
> node,memdev=mem -chardev socket,id=char0,path=/tmp/vfsd.sock -device 
> vhost-user-fs-pci,queue-size=1024,chardev=char0,tag=myfs -chardev 
> stdio,mux=on,id=mon -mon chardev=mon,mode=readline -device 
> virtio-serial-pci -device virtconsole,chardev=mon -vga none -display 
> none -drive if=virtio,file=ubuntu.img
> 
> The failed one without NUMA options: 
> 
> qemu-system-x86_64 -M pc -cpu host --enable-kvm -smp 2 -m 4G -object 
> memory-backend-file,id=mem,size=4G,mem-path=/dev/shm,share=on -machine 
> q35,memory-backend=mem -chardev socket,id=char0,path=/tmp/vfsd.sock
> -device vhost-user-fs-pci,queue-size=1024,chardev=char0,tag=myfs
> -chardev stdio,mux=on,id=mon -mon chardev=mon,mode=readline -device 
> virtio-serial-pci -device virtconsole,chardev=mon -vga none -display 
> none -drive if=virtio,file=ubuntu.img

What error did it give?

20.04 is quite old, what qemu version is it?

I'd have to check when the memdev= went in.

Dave

> 
> Thanks. 
> - Shirley
> 
> -----Original Message-----
> From: Dr. David Alan Gilbert <dgilbert@redhat.com>
> Sent: Tuesday, July 5, 2022 4:04 PM
> To: Thomas Huth <thuth@redhat.com>
> Cc: Zhao, Shirley <shirley.zhao@intel.com>; qemu-devel@nongnu.org; 
> virtio-fs@redhat.com; Stefan Hajnoczi <stefanha@redhat.com>
> Subject: Re: [Qemu] how to use viriofs in qemu without NUMA
> 
> * Thomas Huth (thuth@redhat.com) wrote:
> > On 05/07/2022 03.02, Zhao, Shirley wrote:
> > > Hi, all,
> > > 
> > > I want to use virtiofs to share folder between host and guest.
> > > 
> > >  From the guide, it must set the NUMA node.
> > > https://virtio-fs.gitlab.io/howto-qemu.html
> > > 
> > > But my guest doesn’t support NUMA.
> > > 
> > > Is there any guide to use qemu + virtiofs without NUMA?
> > > 
> > > Or does qemu have any plan to support it?
> > 
> >  Hi!
> > 
> > At least on s390x, you can also specify the memory backend via the 
> > -machine option instead of using the -numa option, e.g.:
> > 
> >  qemu-system-s390x -machine memory-backend=mem \
> >   -object memory-backend-file,id=mem,...
> > 
> > Not sure whether that works on other architectures, too, though. 
> > Stefan, David, do you know?
> 
> Right, that's the way I do it on x86.
> We wrote virtiofs before the memory-backend option existed, which is why the 
> old docs talk about using the NUMA stuff.
> 
> Dave
> 
> >  Thomas
> > 
> --
> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK


reply via email to

[Prev in Thread] Current Thread [Next in Thread]