[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: Xen and Qemu virtio question
Hi Peng, Please see my comments below. On Wed, Jan 03, 2024 at 05:38:07AM +0000, Peng Fan wrote: > Hi Vikram, Oleksii > > I follow the slide virtio for Xen on ARM[1], but I met some issues, and > stuck for about two days. > > I use upstream lastest qemu repo master branch, not qemu-xen.git > repo. This is right. > > My start command as below[2], but seems I need first `xl create domu.cfg`, > otherwise it will fail, because xen hypervisor > dm_op->rcu_lock_remote_domain_by_id will return failure if domu > not created. My domu cfg is simple: > kernel = "/run/media/boot-mmcblk1p1/Image" > disk = [ '/etc/xen/disk_1.img,,xvda,specification=virtio' ] > cmdline = "console=hvc0 root=/dev/xvda rw" > name = "DomU" > memory = 512 > serial = "pty" > > I drop qdisk in the disk entry, because xen tool report qdisk and virtio > not compatible. > > And the arg xen_domid should be same as domu domain id? Is > there any dynamic way to set xen_domid, start qemu when start > domu? Yes, it should be xen_domid. Below virtio-disk patches will take care of invoking QEMU with right domid. > > Does the domu dts still needed to include the virtio,mmio node? > > however xl create domu.cfg relies virtio disk ready, which needs qemu > start first. This confuses me. How do you address this > or I do something wrong? > > Then after xl create, I quickly start qemu, but met: > failed to create ioreq server, then I see there is mismatch. > qemu use HVM_IOREQSRV_BUFIOREQ_ATOMIC to create ioreq server, > but xen ioreq_server_create will return failure: > if ( !IS_ENABLED(CONFIG_X86) && bufioreq_handling ) > > return -EINVAL; > There is a downstream patch for this: https://github.com/Xilinx/xen/commit/be35b46e907c7c78fd23888d837475eb28334638 > So I change HVM_IOREQSRV_BUFIOREQ_OFF in qemu, but met: > qemu-system-aarch64: failed to map ioreq server resources: error 2 > handle=0xaaaad26c7f30 > qemu-system-aarch64: xen hardware virtual machine initialisation failed > > Do you have out of box repo that works well? Including Qemu and Xen, > I am trying virtio disk, but will move to test virtio gpu soon. > > I am not sure there are some downstream patches in your side to > address and make it work well. > We have a few downstream patches for xen-tools. For Virtio disk backend: https://github.com/Xilinx/xen/commit/947280803294bbb963f428423f679d074c60d632 For Virtio-net: https://github.com/Xilinx/xen/commit/32fcc702718591270e5c8928b7687d853249c882 For changing the machine name to Xenpvh(to align with QEMU changes): https://github.com/Xilinx/xen/commit/5f669949c9ffdb1947cb47038956b5fb8eeb072a With above 4 patches it should work for you. Please re-compile Xen and Xen-tools first and finally compile QEMU with this Xen. > Thanks for your help. > > Thanks, > Peng. > > [1]https://www.youtube.com/watch?v=boRQ8UHc760 > > [2]qemu-system-aarch64 -xen-domid 1 \ > -chardev socket,id=libxl-cmd,path=qmp-libxl-1,server=on,wait=off \ > -mon chardev=libxl-cmd,mode=control \ > -chardev socket,id=libxenstat-cmd,path=qmp-libxenstat-1,server=on,wait=off \ > -mon chardev=libxenstat-cmd,mode=control \ > -xen-attach -name guest0 -vnc none -display none -nographic \ > -machine xenpvh -m 513 &
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |