Bug 1793068
| Summary: | packed=on: boot qemu with vhost-user and vIOMMU over OpenvSwitch, starting testpmd in guest will cause ovs crash[rhel7,ovs2.11] | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux Fast Datapath | Reporter: | Pei Zhang <pezhang> | |
| Component: | openvswitch2.11 | Assignee: | Adrián Moreno <amorenoz> | |
| Status: | CLOSED ERRATA | QA Contact: | Pei Zhang <pezhang> | |
| Severity: | high | Docs Contact: | ||
| Priority: | high | |||
| Version: | FDP 20.A | CC: | aadam, ailan, amorenoz, chayang, ctrautma, eperezma, fhallal, jhsiao, jinzhao, juzhang, kfida, ralongi, virt-maint | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | openvswitch2.11-2.11.0-50.el7fdn | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | 1788415 | |||
| : | 1812620 1812741 (view as bug list) | Environment: | ||
| Last Closed: | 2020-04-14 14:31:00 UTC | Type: | --- | |
| 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: | 1788415 | |||
| Bug Blocks: | 1793064, 1812740, 1812741 | |||
|
Comment 1
Pei Zhang
2020-01-20 15:42:31 UTC
Posted a fix to upstream DPDK: http://patches.dpdk.org/patch/65122/ Verified with openvswitch2.11-2.11.0-50.el7fdp.x86_64:
As qemu-kvm-rhev-2.12.0-44.el7_8.1.x86_64 doesn't support packed=on option. So I chose upstream qemu4.2.0:
git://git.qemu.org/qemu.git
# git log -1
commit a98135f727595382e200d04c2996e868b7925a01
Merge: 509f617 f872c76
Author: Peter Maydell <peter.maydell>
Date: Mon Mar 16 14:55:59 2020 +0000
Merge remote-tracking branch 'remotes/kraxel/tags/vga-20200316-pull-request' into staging
vga: stdvga/bochs mmio fix.
# gpg: Signature made Mon 16 Mar 2020 12:48:10 GMT
# gpg: using RSA key 4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel>" [full]
# gpg: aka "Gerd Hoffmann <gerd>" [full]
# gpg: aka "Gerd Hoffmann (private) <kraxel>" [full]
# Primary key fingerprint: A032 8CFF B93A 17A7 9901 FE7D 4CB6 D8EE D3E8 7138
* remotes/kraxel/tags/vga-20200316-pull-request:
stdvga+bochs-display: add dummy mmio handler
Signed-off-by: Peter Maydell <peter.maydell>
Following steps in Description. Both ovs and qemu keep working well. And the dpdk's testpmd in guest can receive packets very well.
qemu cmd line:
/usr/local/bin/qemu-system-x86_64 \
-enable-kvm \
-name guest=rhel7.8 \
-machine q35,kernel_irqchip=split \
-cpu host \
-m 8192 \
-smp 6,sockets=6,cores=1,threads=1 \
-object memory-backend-file,id=mem,size=8G,mem-path=/dev/hugepages,share=on,host-nodes=1,policy=bind \
-numa node,memdev=mem \
-device intel-iommu,intremap=on,caching-mode=on,device-iotlb=on \
-device pcie-root-port,port=0x10,chassis=1,id=pci.1,bus=pcie.0,multifunction=on,addr=0x2 \
-device pcie-root-port,port=0x11,chassis=2,id=pci.2,bus=pcie.0,addr=0x2.0x1 \
-device pcie-root-port,port=0x12,chassis=3,id=pci.3,bus=pcie.0,addr=0x2.0x2 \
-device pcie-root-port,port=0x13,chassis=4,id=pci.4,bus=pcie.0,addr=0x2.0x3 \
-device pcie-root-port,port=0x14,chassis=5,id=pci.5,bus=pcie.0,addr=0x2.0x4 \
-device pcie-root-port,port=0x15,chassis=6,id=pci.6,bus=pcie.0,addr=0x2.0x5 \
-device pcie-root-port,port=0x16,chassis=7,id=pci.7,bus=pcie.0,addr=0x2.0x6 \
-blockdev driver=file,cache.direct=off,cache.no-flush=on,filename=/mnt/nfv/rhel7.8.qcow2,node-name=my_file \
-blockdev driver=qcow2,node-name=my,file=my_file \
-device virtio-blk-pci,scsi=off,iommu_platform=on,ats=on,bus=pci.2,addr=0x0,drive=my,id=virtio-disk0,bootindex=1,write-cache=on \
-netdev tap,id=hostnet0 \
-device virtio-net-pci,netdev=hostnet0,id=net0,mac=88:66:da:5f:dd:01,bus=pci.3,addr=0x0 \
-chardev socket,id=charnet1,path=/tmp/vhostuser0.sock,server \
-netdev vhost-user,chardev=charnet1,queues=2,id=hostnet1 \
-device virtio-net-pci,mq=on,vectors=6,rx_queue_size=1024,netdev=hostnet1,id=net1,mac=88:66:da:5f:dd:02,bus=pci.6,addr=0x0,iommu_platform=on,ats=on,packed=on \
-chardev socket,id=charnet2,path=/tmp/vhostuser1.sock,server \
-netdev vhost-user,chardev=charnet2,queues=2,id=hostnet2 \
-device virtio-net-pci,mq=on,vectors=6,rx_queue_size=1024,netdev=hostnet2,id=net2,mac=88:66:da:5f:dd:03,bus=pci.7,addr=0x0,iommu_platform=on,ats=on,packed=on \
-monitor stdio \
-vnc :2 \
So this bug has been fixed very well. Move to 'VERIFIED'.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:1457 |