-
Bug
-
Resolution: Unresolved
-
Medium
-
19.08
-
None
-
GRUB_CMDLINE_LINUX="console=ttyAMA0,115200n8 biosdevname=0 net.ifnames=1 crashkernel=auto LANG=en_US.UTF-8 acpi=force iommu.passthrough=1 hugepagesz=1GB hugepages=20 default_hugepagesz=1GB"
Linux adam 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:56:40 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
stanislav@adam:~$ lscpu Architecture: aarch64 Byte Order: Little Endian CPU(s): 96 On-line CPU(s) list: 0-95 Thread(s) per core: 1 Core(s) per socket: 16 Socket(s): 6 NUMA node(s): 2 Vendor ID: Cavium Model: 1 Model name: ThunderX 88XX Stepping: 0x1 BogoMIPS: 200.00 NUMA node0 CPU(s): 0-47 NUMA node1 CPU(s): 48-95 Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid stanislav@adam:~$
stanislav@adam:~$ cat /etc/fstab UUID=AB28-5EA7 /boot/efi vfat errors=remount-ro 0 2 #UUID=a5f5d936-289c-4cac-80b2-c8fc23d4987f none swap none 0 0 UUID=8f7bb27d-8faf-4fc4-b026-6a5dc826b1db / ext4 errors=remount-ro 0 1 nodev /mnt/huge_1GB hugetlbfs pagesize=1GB 0 0stanislav@adam:~${code} {code:java} stanislav@adam:~$ work/dpdk/usertools/dpdk-devbind.py --statusNetwork devices using DPDK-compatible driver ============================================ 0002:01:00.2 'THUNDERX Network Interface Controller virtual function a034' drv=vfio-pci unused=nicvf,uio_pci_genericNetwork devices using kernel driver =================================== 0000:01:10.0 'THUNDERX BGX (Common Ethernet Interface) a026' if= drv=thunder-BGX unused=thunder_bgx,vfio-pci,uio_pci_generic 0002:01:00.0 'THUNDERX Network Interface Controller a01e' if= drv=thunder-nic unused=nicpf,vfio-pci,uio_pci_generic 0002:01:00.1 'THUNDERX Network Interface Controller virtual function a034' if=enP2p1s0f1 drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic *Active* 0002:01:00.3 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:00.4 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:00.5 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:00.6 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:00.7 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.0 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.1 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.2 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.3 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.4 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.5 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.6 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.7 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.0 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.1 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.2 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.3 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.4 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.5 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.6 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.7 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:03.0 'THUNDERX Network Interface Controller virtual function a034' if= drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 000c:01:00.0 'THUNDERX Network Interface Controller a01e' if= drv=thunder-nic unused=nicpf,vfio-pci,uio_pci_generic Other Network devices ===================== 0002:00:03.0 'THUNDERX Traffic Network Switch a01f' unused=vfio-pci,uio_pci_generic 000c:00:03.0 'THUNDERX Traffic Network Switch a01f' unused=vfio-pci,uio_pci_genericBaseband devices using kernel driver ==================================== 0000:00:09.0 'THUNDERX Random Number Generator a018' if= drv=cavium_rng_pf unused=cavium_rng,vfio-pci,uio_pci_generic 0000:00:09.1 'THUNDERX Random Number Generator virtual function a033' if= drv=cavium_rng_vf unused=vfio-pci,uio_pci_generic 0000:03:00.0 'THUNDERX Zip Coprocessor a01a' if= drv=ThunderX-ZIP unused=thunderx_zip,vfio-pci,uio_pci_generic 000a:00:09.0 'THUNDERX Random Number Generator a018' if= drv=cavium_rng_pf unused=cavium_rng,vfio-pci,uio_pci_generic 000a:00:09.1 'THUNDERX Random Number Generator virtual function a033' if= drv=cavium_rng_vf unused=vfio-pci,uio_pci_generic 000a:03:00.0 'THUNDERX Zip Coprocessor a01a' if= drv=ThunderX-ZIP unused=thunderx_zip,vfio-pci,uio_pci_generic Other Baseband devices ====================== 0000:04:00.0 'THUNDERX DFA a019' unused=vfio-pci,uio_pci_generic 000a:04:00.0 'THUNDERX DFA a019' unused=vfio-pci,uio_pci_genericNo 'Crypto' devices detected ============================No 'Eventdev' devices detected ==============================No 'Mempool' devices detected =============================No 'Compress' devices detected ==============================No 'Misc (rawdev)' devices detected =================================== stanislav@adam:~$
GRUB_CMDLINE_LINUX="console=ttyAMA0,115200n8 biosdevname=0 net.ifnames=1 crashkernel=auto LANG=en_US.UTF-8 acpi=force iommu.passthrough=1 hugepagesz=1GB hugepages=20 default_hugepagesz=1GB" Linux adam 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:56:40 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux stanislav@adam:~$ lscpu Architecture: aarch64 Byte Order: Little Endian CPU(s): 96 On-line CPU(s) list: 0-95 Thread (s) per core: 1 Core(s) per socket: 16 Socket(s): 6 NUMA node(s): 2 Vendor ID: Cavium Model: 1 Model name: ThunderX 88XX Stepping: 0x1 BogoMIPS: 200.00 NUMA node0 CPU(s): 0-47 NUMA node1 CPU(s): 48-95 Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid stanislav@adam:~$ stanislav@adam:~$ cat /etc/fstab UUID=AB28-5EA7 /boot/efi vfat errors=remount-ro 0 2 #UUID=a5f5d936-289c-4cac-80b2-c8fc23d4987f none swap none 0 0 UUID=8f7bb27d-8faf-4fc4-b026-6a5dc826b1db / ext4 errors=remount-ro 0 1 nodev /mnt/huge_1GB hugetlbfs pagesize=1GB 0 0stanislav@adam:~${code} {code:java} stanislav@adam:~$ work/dpdk/usertools/dpdk-devbind.py --statusNetwork devices using DPDK-compatible driver ============================================ 0002:01:00.2 'THUNDERX Network Interface Controller virtual function a034' drv=vfio-pci unused=nicvf,uio_pci_genericNetwork devices using kernel driver =================================== 0000:01:10.0 'THUNDERX BGX (Common Ethernet Interface) a026' if = drv=thunder-BGX unused=thunder_bgx,vfio-pci,uio_pci_generic 0002:01:00.0 'THUNDERX Network Interface Controller a01e' if = drv=thunder-nic unused=nicpf,vfio-pci,uio_pci_generic 0002:01:00.1 'THUNDERX Network Interface Controller virtual function a034' if =enP2p1s0f1 drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic *Active* 0002:01:00.3 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:00.4 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:00.5 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:00.6 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:00.7 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.0 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.1 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.2 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.3 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.4 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.5 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.6 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:01.7 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.0 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.1 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.2 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.3 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.4 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.5 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.6 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:02.7 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 0002:01:03.0 'THUNDERX Network Interface Controller virtual function a034' if = drv=thunder-nicvf unused=nicvf,vfio-pci,uio_pci_generic 000c:01:00.0 'THUNDERX Network Interface Controller a01e' if = drv=thunder-nic unused=nicpf,vfio-pci,uio_pci_generic Other Network devices ===================== 0002:00:03.0 'THUNDERX Traffic Network Switch a01f' unused=vfio-pci,uio_pci_generic 000c:00:03.0 'THUNDERX Traffic Network Switch a01f' unused=vfio-pci,uio_pci_genericBaseband devices using kernel driver ==================================== 0000:00:09.0 'THUNDERX Random Number Generator a018' if = drv=cavium_rng_pf unused=cavium_rng,vfio-pci,uio_pci_generic 0000:00:09.1 'THUNDERX Random Number Generator virtual function a033' if = drv=cavium_rng_vf unused=vfio-pci,uio_pci_generic 0000:03:00.0 'THUNDERX Zip Coprocessor a01a' if = drv=ThunderX-ZIP unused=thunderx_zip,vfio-pci,uio_pci_generic 000a:00:09.0 'THUNDERX Random Number Generator a018' if = drv=cavium_rng_pf unused=cavium_rng,vfio-pci,uio_pci_generic 000a:00:09.1 'THUNDERX Random Number Generator virtual function a033' if = drv=cavium_rng_vf unused=vfio-pci,uio_pci_generic 000a:03:00.0 'THUNDERX Zip Coprocessor a01a' if = drv=ThunderX-ZIP unused=thunderx_zip,vfio-pci,uio_pci_generic Other Baseband devices ====================== 0000:04:00.0 'THUNDERX DFA a019' unused=vfio-pci,uio_pci_generic 000a:04:00.0 'THUNDERX DFA a019' unused=vfio-pci,uio_pci_genericNo 'Crypto' devices detected ============================No 'Eventdev' devices detected ==============================No 'Mempool' devices detected =============================No 'Compress' devices detected ==============================No 'Misc (rawdev)' devices detected =================================== stanislav@adam:~$
I checkout the commit f4dcae4164f93dac80d4af19af0ee20e712ec673 (HEAD, tag: v19.08.1)
Then
make install-dep
make install-ext-deps
make pkg-deb
sudo dpkg -i libvppinfra_19.08.1-release_arm64.deb vpp-dbg_19.08.1-release_arm64.deb vpp-plugin-core_19.08.1-release_arm64.deb vpp-plugin-dpdk_19.08.1-release_arm64.deb vpp_19.08.1-release_arm64.deb
I stopped the VPP service and then rerun it with ThunderX specific configuration file:
sudo service vpp stop
sudo service vpp status
sudo /usr/bin/vpp -c /etc/vpp/contiv-vswitch.conf
unix { nodaemon cli-listen /run/vpp/cli.sock cli-no-pager poll-sleep-usec 100 log /var/contiv/vpp.log } nat { endpoint-dependent translation hash buckets 1048576 translation hash memory 268435456 user hash buckets 1024 max translations per user 10000 } acl-plugin { use tuple merge 0 } api-trace { on nitems 5000 } socksvr { default } statseg { default } dpdk { dev 0002:01:00.2 }
The VPP successfully started .
I opened vppctl in other terminal and issued commands:
stanislav@adam:~$ sudo /usr/bin/vppctl _______ _ _ _____ ___ __/ __/ _ \ (_)__ | | / / _ \/ _ \ _/ _// // / / / _ \ | |/ / ___/ ___/ /_/ /____(_)_/\___/ |___/_/ /_/vpp# show interface Name Idx State MTU (L3/IP4/IP6/MPLS) Counter Count VirtualFunctionEthernet1/0/2 1 down 9000/0/0/0 rx-miss 5980 local0 0 down 0/0/0/0 vpp# vpp# show hardware-interfaces Name Idx Link Hardware VirtualFunctionEthernet1/0/2 1 up VirtualFunctionEthernet1/0/2 Link speed: 10 Gbps Ethernet address 30:0e:d5:ff:0d:9e Cavium ThunderX carrier up full duplex mtu 9190 flags: pmd maybe-multiseg tx-offload rx-ip4-cksum rx: queues 1 (max 96), desc 1024 (min 0 max 65535 align 1) tx: queues 1 (max 96), desc 1024 (min 0 max 65535 align 1) pci: device 177d:a034 subsystem 177d:a134 address 0002:01:00.02 numa 0 max rx packet len: 9204 promiscuous: unicast off all-multicast off vlan offload: strip off filter off qinq off rx offload avail: vlan-strip ipv4-cksum udp-cksum tcp-cksum jumbo-frame scatter rx offload active: ipv4-cksum jumbo-frame scatter tx offload avail: ipv4-cksum udp-cksum tcp-cksum outer-ipv4-cksum multi-segs mbuf-fast-free tx offload active: udp-cksum tcp-cksum multi-segs rss avail: ipv4-tcp ipv4-udp ipv4 ipv6-tcp ipv6-udp ipv6 port vxlan geneve nvgre rss active: none tx burst function: (nil) rx burst function: (nil) rx missed 5980 local0 0 down local0 Link speed: unknown local vpp# show version vpp v20.01-rc0~375-g3ae9f5a90 built by stanislav on adam at Thu Oct 10 13:25:55 UTC 2019 vpp# show version verbose Version: v20.01-rc0~375-g3ae9f5a90 Compiled by: stanislav Compile host: adam Compile date: Thu Oct 10 13:25:55 UTC 2019 Compile location: /home/stanislav/work/fdio/vpp Compiler: GCC 8.3.0 Current PID: 22006 vpp# set interface state VirtualFunctionEthernet1/0/2 up
After that VPP crashed.
I found postmortem file in /tmp folder
.