[vpp-dev] DPDK Version Issue in vppctl
Hi, I am facing a strange issue in vppctl. I compiled dpdk 21.11 with vpp. Made pkg-deb and then installed all those deb files. Before installing the new ones I purged old packages. However when I see the dpdk version in vppctl it is showing me the old dpdk version I used which is 20.11.1 DBGvpp# show dpdk version DPDK Version: DPDK 20.11.1 DPDK EAL init args: -c 2 -n 4 --in-memory --no-telemetry --file-prefix vpp -a :07:00.0 -a :07:00.1 --main-lcore 1 DBGvpp# = There is no dpdk 20.11.1 on my system as I cleared all dpdk libs and binaries before installing vpp deb packages. == Here are some compilation logs Configuring vpp in /home/ubuntu/work/vpp/build-root/build-vpp-native/vpp -- Looking for ccache -- Looking for ccache - found -- Looking for libuuid -- Found uuid in /usr/include -- Found subunit in /usr/include and /usr/lib/riscv64-linux-gnu/libsubunit.so -- af_xdp plugin needs libbpf.a library - found at /home/ubuntu/work/vpp/build-root/install-vpp-native/external/lib/libbpf.a -- af_xdp plugin needs elf library - found at /usr/lib/riscv64-linux-gnu/libelf.so -- af_xdp plugin needs z library - found at /usr/lib/riscv64-linux-gnu/libz.so -- dpdk plugin needs libdpdk.a library - found at /home/ubuntu/work/vpp/build-root/install-vpp-native/external/lib/libdpdk.a *-- Found DPDK 21.11.0 *in /home/ubuntu/work/vpp/build-root/install-vpp-native/external/include -- dpdk plugin needs numa library - found at /usr/lib/riscv64-linux-gnu/libnuma.so -- linux-cp plugin needs libnl-3.so library - found at /usr/lib/riscv64-linux-gnu/libnl-3.so -- linux-cp plugin needs libnl-route-3.so.200 library - found at /usr/lib/riscv64-linux-gnu/libnl-route-3.so.200 -- Found quicly 0.1.3-vpp in /home/ubuntu/work/vpp/build-root/install-vpp-native/external/include -- -- rdma headers not found - rdma plugin disabled -- -- libdaq headers not found - snort3 DAQ disabled -- -- libsrtp2.a library not found - srtp plugin disabled -- tlsmbedtls plugin needs mbedtls library - found at /usr/lib/riscv64-linux-gnu/libmbedtls.so -- tlsmbedtls plugin needs mbedx509 library - found at /usr/lib/riscv64-linux-gnu/libmbedx509.so -- tlsmbedtls plugin needs mbedcrypto library - found at /usr/lib/riscv64-linux-gnu/libmbedcrypto.so -- Found picotls in /home/ubuntu/work/vpp/build-root/install-vpp-native/external/include and /home/ubuntu/work/vpp/build-root/install-vpp-native/external/lib/libpicotls-core.a -- Configuration: VPP version : 22.02-rc0~191-g6eb0f84e3 VPP library version : 22.02 GIT toplevel dir: /home/ubuntu/work/vpp Build type : release C flags : Linker flags (apps) : -pie Linker flags (libs) : Host processor : riscv64 Target processor: riscv64 Prefix path : /opt/vpp/external/riscv64 /home/ubuntu/work/vpp/build-root/install-vpp-native/external Install prefix : /home/ubuntu/work/vpp/build-root/install-vpp-native/vpp -- Configuring done -- Generating done -- Build files have been written to: /home/ubuntu/work/vpp/build-root/build-vpp-native/vpp == Any pointers on how to debug this? The rte_build_config.h file has proper version in it #define RTE_VDPA_IFC 1 #define RTE_VER_MINOR 0 #define RTE_VER_MONTH 11 #define RTE_VER_RELEASE 99 #define RTE_VER_SUFFIX "" #define RTE_VER_YEAR 21 -- Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#21005): https://lists.fd.io/g/vpp-dev/message/21005 Mute This Topic: https://lists.fd.io/mt/89706444/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[vpp-dev] VPP RISC-V - DPDK 21.11 LTS Support
les/plugins -I/home/ubuntu/work/vpp/build-root/install-vpp-native/external/include -fPIC -g -fPIC -Werror -Wall -Wno-array-bounds -Wno-stringop-overflow -Wno-error=deprecated-declarations -Wno-deprecated-declarations -Wno-address-of-packed-member -O3 -fstack-protector -fno-common -fvisibility=hidden -ffunction-sections -fdata-sections -MD -MT CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/init.c.o -MF CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/init.c.o.d -o CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/init.c.o -c /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c: In function ‘dpdk_lib_init’: /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c:615:53: error: passing argument 1 of ‘rte_intr_cap_multiple’ from incompatible pointer type [-Werror=incompatible-pointer-types] 615 | if (pci_dev && rte_intr_cap_multiple (&pci_dev->intr_handle)) | ^ | | | struct rte_intr_handle ** In file included from /home/ubuntu/work/vpp/src/plugins/dpdk/device/dpdk.h:33, from /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c:27: /home/ubuntu/work/vpp/build-root/install-vpp-native/external/include/rte_interrupts.h:436:47: note: expected ‘struct rte_intr_handle *’ but argument is of type ‘struct rte_intr_handle **’ 436 | rte_intr_cap_multiple(struct rte_intr_handle *intr_handle); | ^~~ /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c: In function ‘dpdk_lib_init.constprop’: /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c:615:30: error: call to ‘rte_intr_cap_multiple’ declared with attribute error: Symbol is not public ABI 615 | if (pci_dev && rte_intr_cap_multiple (&pci_dev->intr_handle)) | ^ cc1: all warnings being treated as errors ninja: build stopped: subcommand failed. make[1]: *** [Makefile:693: vpp-build] Error 1 make[1]: Leaving directory '/home/ubuntu/work/vpp/build-root' make: *** [Makefile:564: pkg-deb] Error 2 === Is DPDK 21.11 LTS supported in VPP for X86/ARM? -- Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20940): https://lists.fd.io/g/vpp-dev/message/20940 Mute This Topic: https://lists.fd.io/mt/89496496/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [vpp-dev] Risc-V Compilation Error
Hi Damjan, Thanks a lot. I am already trying a similar fix. I will get your fix and let you know further progress. Thanks, Hrishikesh On Wed, Jan 19, 2022 at 10:45 PM Damjan Marion wrote: > > This may help you: > > https://gerrit.fd.io/r/c/vpp/+/34972 > > — > Damjan > > > > On 19.01.2022., at 11:15, Hrishikesh Karanjikar < > hrishikesh.karanji...@gmail.com> wrote: > > Hi, > > I am trying to compile vpp on the SiFive HiFive Unmatched board. > Following is my build environment > > == > > > ubuntu@ubuntu:~/work/vpp$ uname -a > Linux ubuntu 5.13.0-1008-generic #8-Ubuntu SMP Fri Jan 7 18:50:29 UTC 2022 > riscv64 riscv64 riscv64 GNU/Linux > > ubuntu@ubuntu:~/work/vpp$ lsb_release -a > No LSB modules are available. > Distributor ID: Ubuntu > Description: Ubuntu 21.10 > Release: 21.10 > Codename: impish > > == > I am using the latest master branch for VPP. > I am getting the following compilation error. I have changed the > default-clang format to 11. > > == > ubuntu@ubuntu:~/work/vpp$ make pkg-deb > make[1]: Entering directory '/home/ubuntu/work/vpp/build-root' > Arch for platform 'vpp' is native > Finding source for external > Makefile fragment found in /home/ubuntu/work/vpp/build-data/packages/ > external.mk > Source found in /home/ubuntu/work/vpp/build > Arch for platform 'vpp' is native > Finding source for vpp > Makefile fragment found in /home/ubuntu/work/vpp/build-data/packages/ > vpp.mk > Source found in /home/ubuntu/work/vpp/src > find: ‘/home/ubuntu/work/vpp/build-root/config.site’: No such file or > directory > Configuring external: nothing to do > Building external in > /home/ubuntu/work/vpp/build-root/build-vpp-native/external > > Installing external: nothing to do > find: ‘/home/ubuntu/work/vpp/build-root/config.site’: No such file or > directory > Configuring vpp: nothing to do > Building vpp in /home/ubuntu/work/vpp/build-root/build-vpp-native/vpp > > [2/1501] Building C object > CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o > FAILED: CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o > ccache /usr/lib/ccache/clang-13 --target=riscv64-linux-gnu -DHAVE_FCNTL64 > -D_FORTIFY_SOURCE=2 -I/home/ubuntu/work/vpp/src -ICMakeFiles -fPIC > -fvisibility=hidden -g -Werror -Wall -Wno-address-of-packed-member -O3 > -fstack-protector -fno-common -MD -MT > CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o -MF > CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o.d -o > CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o -c > /home/ubuntu/work/vpp/src/vppinfra/cpu.c > /home/ubuntu/work/vpp/src/vppinfra/cpu.c:203:1: error: unused function > 'flag_skip_prefix' [-Werror,-Wunused-function] > flag_skip_prefix (char const *flag, const char *pfx, int len) > ^ > 1 error generated. > [5/1501] Building C object > CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/format.c.o > ninja: build stopped: subcommand failed. > make[1]: *** [Makefile:693: vpp-build] Error 1 > make[1]: Leaving directory '/home/ubuntu/work/vpp/build-root' > make: *** [Makefile:593: pkg-deb] Error 2 > > == > > > -- > > Regards, > Hrishikesh Karanjikar > > > > > -- Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20765): https://lists.fd.io/g/vpp-dev/message/20765 Mute This Topic: https://lists.fd.io/mt/88531162/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[vpp-dev] Risc-V Compilation Error
Hi, I am trying to compile vpp on the SiFive HiFive Unmatched board. Following is my build environment == ubuntu@ubuntu:~/work/vpp$ uname -a Linux ubuntu 5.13.0-1008-generic #8-Ubuntu SMP Fri Jan 7 18:50:29 UTC 2022 riscv64 riscv64 riscv64 GNU/Linux ubuntu@ubuntu:~/work/vpp$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 21.10 Release: 21.10 Codename: impish == I am using the latest master branch for VPP. I am getting the following compilation error. I have changed the default-clang format to 11. == ubuntu@ubuntu:~/work/vpp$ make pkg-deb make[1]: Entering directory '/home/ubuntu/work/vpp/build-root' Arch for platform 'vpp' is native Finding source for external Makefile fragment found in /home/ubuntu/work/vpp/build-data/packages/ external.mk Source found in /home/ubuntu/work/vpp/build Arch for platform 'vpp' is native Finding source for vpp Makefile fragment found in /home/ubuntu/work/vpp/build-data/packages/ vpp.mk Source found in /home/ubuntu/work/vpp/src find: ‘/home/ubuntu/work/vpp/build-root/config.site’: No such file or directory Configuring external: nothing to do Building external in /home/ubuntu/work/vpp/build-root/build-vpp-native/external Installing external: nothing to do find: ‘/home/ubuntu/work/vpp/build-root/config.site’: No such file or directory Configuring vpp: nothing to do Building vpp in /home/ubuntu/work/vpp/build-root/build-vpp-native/vpp [2/1501] Building C object CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o FAILED: CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o ccache /usr/lib/ccache/clang-13 --target=riscv64-linux-gnu -DHAVE_FCNTL64 -D_FORTIFY_SOURCE=2 -I/home/ubuntu/work/vpp/src -ICMakeFiles -fPIC -fvisibility=hidden -g -Werror -Wall -Wno-address-of-packed-member -O3 -fstack-protector -fno-common -MD -MT CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o -MF CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o.d -o CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/cpu.c.o -c /home/ubuntu/work/vpp/src/vppinfra/cpu.c /home/ubuntu/work/vpp/src/vppinfra/cpu.c:203:1: error: unused function 'flag_skip_prefix' [-Werror,-Wunused-function] flag_skip_prefix (char const *flag, const char *pfx, int len) ^ 1 error generated. [5/1501] Building C object CMakeFiles/vppinfra/CMakeFiles/vppinfra_objs.dir/format.c.o ninja: build stopped: subcommand failed. make[1]: *** [Makefile:693: vpp-build] Error 1 make[1]: Leaving directory '/home/ubuntu/work/vpp/build-root' make: *** [Makefile:593: pkg-deb] Error 2 ====== -- Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20753): https://lists.fd.io/g/vpp-dev/message/20753 Mute This Topic: https://lists.fd.io/mt/88531162/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [vpp-dev] VPP IPSec Related Doubts
Hi Juraj, Thanks for your reply. I was able to get the things working with new commands. Thanks, Hrishikesh On Mon, Jan 17, 2022 at 7:02 PM Juraj Linkeš wrote: > Hi Hrishikesh, > > > > The API has changed, try without the hyphen: > > ipsec sa add 10 spi 1000 esp tunnel src 192.168.1.1 tunnel dst 192.168.1.2 > crypto-key 4339314b55523947594d6d3547666b45 crypto-alg aes-cbc-128 > integ-key 4339314b55523947594d6d3547666b45 integ-alg sha1-96 > > > > Regards, > > Juraj > > > > *From:* vpp-dev@lists.fd.io *On Behalf Of *Hrishikesh > Karanjikar > *Sent:* Thursday, December 16, 2021 10:45 AM > *To:* vpp-dev@lists.fd.io > *Subject:* [vpp-dev] VPP IPSec Related Doubts > > > > Hi All, > > > > I am trying to get following setup working, > > > > > https://www.intel.com/content/www/us/en/developer/articles/guide/get-started-with-ipsec-acceleration-in-the-fdio-vpp-project.html > > > > The commands in above setup are as follows, > > = > > set int ip address TenGigabitEthernet6/0/0 192.168.30.30/24 > set int promiscuous on TenGigabitEthernet6/0/0 > set int ip address TenGigabitEthernet6/0/1 192.168.30.31/24 > set int promiscuous on TenGigabitEthernet6/0/1 > > ipsec spd add 1 > set interface ipsec spd TenGigabitEthernet6/0/1 1 > ipsec sa add 10 spi 1000 esp tunnel-src 192.168.1.1 tunnel-dst 192.168.1.2 > crypto-key 4339314b55523947594d6d3547666b45 crypto-alg aes-cbc-128 > integ-key 4339314b55523947594d6d3547666b45 integ-alg sha1-96 > ipsec policy add spd 1 outbound priority 100 action protect sa 10 > local-ip-range 192.168.20.0-192.168.20.255 remote-ip-range > 192.168.40.0-192.168.40.255 > ipsec policy add spd 1 outbound priority 90 protocol 50 action bypass > > ip route add 192.168.40.40/32 via 192.168.1.2 TenGigabitEthernet6/0/1 > set ip arp TenGigabitEthernet6/0/1 192.168.1.2 90:e2:ba:50:8f:19 > > set int state TenGigabitEthernet6/0/0 up > set int state TenGigabitEthernet6/0/1 up > > = > > > However, a few commands in the setup are failing. > > e.g. > > DBGvpp# ipsec sa add 10 spi 1000 esp tunnel-src 192.168.1.1 tunnel-dst > 192.168.1.2 crypto-key 4339314b55523947594d6d3547666b45 crypto-alg > aes-cbc-128 integ-key 4339314b55523947594d6d3547666b45 integ-alg sha1-96 > ipsec sa: parse error: '-src 192.168.1.1 tunnel-dst 19...' > > > > Can anybody guide me on how to go about this? > > > > -- > > > Thanks and Regards, > Hrishikesh Karanjikar > -- Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20736): https://lists.fd.io/g/vpp-dev/message/20736 Mute This Topic: https://lists.fd.io/mt/87764016/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[vpp-dev] VPP IPSec Related Doubts
Hi All, I am trying to get following setup working, https://www.intel.com/content/www/us/en/developer/articles/guide/get-started-with-ipsec-acceleration-in-the-fdio-vpp-project.html The commands in above setup are as follows, = set int ip address TenGigabitEthernet6/0/0 192.168.30.30/24 set int promiscuous on TenGigabitEthernet6/0/0 set int ip address TenGigabitEthernet6/0/1 192.168.30.31/24 set int promiscuous on TenGigabitEthernet6/0/1 ipsec spd add 1 set interface ipsec spd TenGigabitEthernet6/0/1 1 ipsec sa add 10 spi 1000 esp tunnel-src 192.168.1.1 tunnel-dst 192.168.1.2 crypto-key 4339314b55523947594d6d3547666b45 crypto-alg aes-cbc-128 integ-key 4339314b55523947594d6d3547666b45 integ-alg sha1-96 ipsec policy add spd 1 outbound priority 100 action protect sa 10 local-ip-range 192.168.20.0-192.168.20.255 remote-ip-range 192.168.40.0-192.168.40.255 ipsec policy add spd 1 outbound priority 90 protocol 50 action bypass ip route add 192.168.40.40/32 via 192.168.1.2 TenGigabitEthernet6/0/1 set ip arp TenGigabitEthernet6/0/1 192.168.1.2 90:e2:ba:50:8f:19 set int state TenGigabitEthernet6/0/0 up set int state TenGigabitEthernet6/0/1 up = However, a few commands in the setup are failing. e.g. DBGvpp# ipsec sa add 10 spi 1000 esp tunnel-src 192.168.1.1 tunnel-dst 192.168.1.2 crypto-key 4339314b55523947594d6d3547666b45 crypto-alg aes-cbc-128 integ-key 4339314b55523947594d6d3547666b45 integ-alg sha1-96 ipsec sa: parse error: '-src 192.168.1.1 tunnel-dst 19...' Can anybody guide me on how to go about this? -- Thanks and Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20641): https://lists.fd.io/g/vpp-dev/message/20641 Mute This Topic: https://lists.fd.io/mt/87764016/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [vpp-dev] About Risc-V Porting
Hi Damjan, I am using Ubuntu 20.04 image on Qemu. I had to do following changes to make it work. diff --git a/src/vppinfra/CMakeLists.txt b/src/vppinfra/CMakeLists.txt index 58ec32fbf..2168da185 100644 --- a/src/vppinfra/CMakeLists.txt +++ b/src/vppinfra/CMakeLists.txt @@ -219,7 +219,7 @@ if(VPP_USE_EXTERNAL_LIBEXECINFO) endif() add_vpp_library(vppinfra SOURCES ${VPPINFRA_SRCS} - LINK_LIBRARIES m ${EXECINFO_LIB} + LINK_LIBRARIES m ${EXECINFO_LIB} atomic INSTALL_HEADERS ${VPPINFRA_HEADERS} COMPONENT libvppinfra LTO ubuntu@ubuntu:~/work/vpp$ ubuntu@ubuntu:~/work/vpp$ ubuntu@ubuntu:~/work/vpp$ ubuntu@ubuntu:~/work/vpp$ ubuntu@ubuntu:~/work/vpp$ uname -a Linux ubuntu 5.11.0-1022-generic #23~20.04.1-Ubuntu SMP Thu Oct 21 10:16:27 UTC 2021 riscv64 riscv64 riscv64 GNU/Linux ubuntu@ubuntu:~/work/vpp$ Thanks, Hrishikesh On Fri, Nov 12, 2021 at 6:01 PM Damjan Marion wrote: > > Hi, > > i tried to repro with gcc-10 on ubuntu 21.10 x86_64 and everything works > fine. > Only caveat is that I had to pass -Wno-stringop-overflow in CFLAGS. > > — > Damjan > > > > On 10.11.2021., at 08:29, Hrishikesh Karanjikar < > hrishikesh.karanji...@gmail.com> wrote: > > Hi Damjan, > > I upgraded my Unmatched board to run Ubuntu 21.10 from 21.04. > I was able to build VPP on Unmatched. > I am also trying to build it on Qemu with GCC 10. > I am getting following error, > > > > > ubuntu@ubuntu:~/work/vpp$ make build > make[1]: Entering directory '/home/ubuntu/work/vpp/build-root' > Arch for platform 'vpp' is native > Finding source for external > Makefile fragment found in /home/ubuntu/work/vpp/build-data/packages/ > external.mk > Source found in /home/ubuntu/work/vpp/build > Arch for platform 'vpp' is native > Finding source for vpp > Makefile fragment found in /home/ubuntu/work/vpp/build-data/packages/ > vpp.mk > Source found in /home/ubuntu/work/vpp/src > find: ‘/home/ubuntu/work/vpp/build-root/config.site’: No such file or > directory > Configuring external: nothing to do > Building external: nothing to do > Installing external: nothing to do > find: ‘/home/ubuntu/work/vpp/build-root/config.site’: No such file or > directory > Configuring vpp: nothing to do > Building vpp in > /home/ubuntu/work/vpp/build-root/build-vpp_debug-native/vpp > [2/1463] Linking C executable bin/svmtool > FAILED: bin/svmtool > : && ccache /usr/lib/ccache/gcc-10 > CMakeFiles/svm/CMakeFiles/svmtool.dir/svmtool.c.o -o bin/svmtool > > -Wl,-rpath,/home/ubuntu/work/vpp/build-root/build-vpp_debug-native/vpp/lib/riscv64-linux-gnu:: > lib/riscv64-linux-gnu/libsvm.so.22.02 > lib/riscv64-linux-gnu/libvppinfra.so.22.02 -lm -lrt -lpthread && : > /usr/bin/ld: lib/riscv64-linux-gnu/libvppinfra.so.22.02: undefined > reference to `__atomic_exchange_1' > collect2: error: ld returned 1 exit status > [3/1463] Linking C executable bin/svmdbtool > FAILED: bin/svmdbtool > : && ccache /usr/lib/ccache/gcc-10 > CMakeFiles/svm/CMakeFiles/svmdbtool.dir/svmdbtool.c.o -o bin/svmdbtool > > -Wl,-rpath,/home/ubuntu/work/vpp/build-root/build-vpp_debug-native/vpp/lib/riscv64-linux-gnu:: > lib/riscv64-linux-gnu/libsvmdb.so.22.02 > lib/riscv64-linux-gnu/libsvm.so.22.02 > lib/riscv64-linux-gnu/libvppinfra.so.22.02 -lm -lrt -lpthread && : > /usr/bin/ld: lib/riscv64-linux-gnu/libvppinfra.so.22.02: undefined > reference to `__atomic_exchange_1' > collect2: error: ld returned 1 exit status > [5/1463] Building C object > CMakeFiles/vlib/CMakeFiles/vlib_objs.dir/drop.c.o > ninja: build stopped: subcommand failed. > make[1]: *** [Makefile:693: vpp-build] Error 1 > make[1]: Leaving directory '/home/ubuntu/work/vpp/build-root' > make: *** [Makefile:356: build] Error 2 > > > > Libatomic is present on my machine. > > Can you give me some pointers to resolve the same? > > Thanks, > Hrishikesh > > On Mon, Nov 8, 2021 at 8:19 PM Hrishikesh Karanjikar < > hrishikesh.karanji...@gmail.com> wrote: > >> Hi, >> >> This is great. >> Thanks a lot. >> Let me try that. >> >> Hrishikesh >> >> On Mon, Nov 8, 2021 at 8:00 PM Damjan Marion wrote: >> >>> I compiled directly on the Unmatched board. I also submitted series of >>> patches which are fixing all >>> issues you are referring to. >>> >>> you can use both clang and g
Re: [vpp-dev] About Risc-V Porting
Hi Damjan, I upgraded my Unmatched board to run Ubuntu 21.10 from 21.04. I was able to build VPP on Unmatched. I am also trying to build it on Qemu with GCC 10. I am getting following error, ubuntu@ubuntu:~/work/vpp$ make build make[1]: Entering directory '/home/ubuntu/work/vpp/build-root' Arch for platform 'vpp' is native Finding source for external Makefile fragment found in /home/ubuntu/work/vpp/build-data/packages/ external.mk Source found in /home/ubuntu/work/vpp/build Arch for platform 'vpp' is native Finding source for vpp Makefile fragment found in /home/ubuntu/work/vpp/build-data/packages/ vpp.mk Source found in /home/ubuntu/work/vpp/src find: ‘/home/ubuntu/work/vpp/build-root/config.site’: No such file or directory Configuring external: nothing to do Building external: nothing to do Installing external: nothing to do find: ‘/home/ubuntu/work/vpp/build-root/config.site’: No such file or directory Configuring vpp: nothing to do Building vpp in /home/ubuntu/work/vpp/build-root/build-vpp_debug-native/vpp [2/1463] Linking C executable bin/svmtool FAILED: bin/svmtool : && ccache /usr/lib/ccache/gcc-10 CMakeFiles/svm/CMakeFiles/svmtool.dir/svmtool.c.o -o bin/svmtool -Wl,-rpath,/home/ubuntu/work/vpp/build-root/build-vpp_debug-native/vpp/lib/riscv64-linux-gnu:: lib/riscv64-linux-gnu/libsvm.so.22.02 lib/riscv64-linux-gnu/libvppinfra.so.22.02 -lm -lrt -lpthread && : /usr/bin/ld: lib/riscv64-linux-gnu/libvppinfra.so.22.02: undefined reference to `__atomic_exchange_1' collect2: error: ld returned 1 exit status [3/1463] Linking C executable bin/svmdbtool FAILED: bin/svmdbtool : && ccache /usr/lib/ccache/gcc-10 CMakeFiles/svm/CMakeFiles/svmdbtool.dir/svmdbtool.c.o -o bin/svmdbtool -Wl,-rpath,/home/ubuntu/work/vpp/build-root/build-vpp_debug-native/vpp/lib/riscv64-linux-gnu:: lib/riscv64-linux-gnu/libsvmdb.so.22.02 lib/riscv64-linux-gnu/libsvm.so.22.02 lib/riscv64-linux-gnu/libvppinfra.so.22.02 -lm -lrt -lpthread && : /usr/bin/ld: lib/riscv64-linux-gnu/libvppinfra.so.22.02: undefined reference to `__atomic_exchange_1' collect2: error: ld returned 1 exit status [5/1463] Building C object CMakeFiles/vlib/CMakeFiles/vlib_objs.dir/drop.c.o ninja: build stopped: subcommand failed. make[1]: *** [Makefile:693: vpp-build] Error 1 make[1]: Leaving directory '/home/ubuntu/work/vpp/build-root' make: *** [Makefile:356: build] Error 2 Libatomic is present on my machine. Can you give me some pointers to resolve the same? Thanks, Hrishikesh On Mon, Nov 8, 2021 at 8:19 PM Hrishikesh Karanjikar < hrishikesh.karanji...@gmail.com> wrote: > Hi, > > This is great. > Thanks a lot. > Let me try that. > > Hrishikesh > > On Mon, Nov 8, 2021 at 8:00 PM Damjan Marion wrote: > >> I compiled directly on the Unmatched board. I also submitted series of >> patches which are fixing all >> issues you are referring to. >> >> you can use both clang and gcc, problem with clang is that some parts of >> VPP unconditionally turn address sanitiser on and there is no ASAN >> shared libraries available for risc-v. >> You can bypass this temporarely by commenting out test_pnat, test_vat and >> test_vat2 targets. >> >> I also managed to cross-compile vpp on ubuntu system by using debian >> multiarch libs. >> >> # dpkg --add-architecture riscv64 >> >> Update sources.list: >> >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ >> impish main restricted universe multiverse >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ >> impish-updates main restricted universe multiverse >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ >> impish-backports main restricted universe multiverse >> >> # apt update >> >> # apt install crossbuild-essential-riscv64 libssl-dev:riscv64 >> uuid-dev:riscv64 libnl-3-dev:riscv6 libnl-route-3-dev:riscv64 >> libbpf-dev:riscv64 >> >> >> $ cmake \ >> -DCMAKE_SYSTEM_NAME=Linux \ >> -DCMAKE_SYSTEM_PROCESSOR=riscv64 \ >> -DCMAKE_C_COMPILER=riscv64-linux-gnu-gcc \ >> -DCMAKE_CXX_COMPILER=riscv64-linux-gnu-gcc \ >> -DCMAKE_C_COMPILER_TARGET=riscv64-linux-gnu \ >> -DCMAKE_CXX_COMPILER_TARGET=riscv64-linux-gnu \ >> -DCMAKE_ASM_COMPILER_TARGET=riscv64-linux-gnu \ >> -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \ >> -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH \ >> -DCMAKE_FIND_
Re: [vpp-dev] About Risc-V Porting
Hi, One more thing. Did you compile with DPDK? I compiled with DPDK. I have ported DPDK for Risc-V. Not upstreamed yet. I had to compile without rdma-core. Thanks, Hrishikesh On Mon, Nov 8, 2021 at 8:19 PM Hrishikesh Karanjikar < hrishikesh.karanji...@gmail.com> wrote: > Hi, > > This is great. > Thanks a lot. > Let me try that. > > Hrishikesh > > On Mon, Nov 8, 2021 at 8:00 PM Damjan Marion wrote: > >> I compiled directly on the Unmatched board. I also submitted series of >> patches which are fixing all >> issues you are referring to. >> >> you can use both clang and gcc, problem with clang is that some parts of >> VPP unconditionally turn address sanitiser on and there is no ASAN >> shared libraries available for risc-v. >> You can bypass this temporarely by commenting out test_pnat, test_vat and >> test_vat2 targets. >> >> I also managed to cross-compile vpp on ubuntu system by using debian >> multiarch libs. >> >> # dpkg --add-architecture riscv64 >> >> Update sources.list: >> >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ >> impish main restricted universe multiverse >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ >> impish-updates main restricted universe multiverse >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ >> impish-backports main restricted universe multiverse >> >> # apt update >> >> # apt install crossbuild-essential-riscv64 libssl-dev:riscv64 >> uuid-dev:riscv64 libnl-3-dev:riscv6 libnl-route-3-dev:riscv64 >> libbpf-dev:riscv64 >> >> >> $ cmake \ >> -DCMAKE_SYSTEM_NAME=Linux \ >> -DCMAKE_SYSTEM_PROCESSOR=riscv64 \ >> -DCMAKE_C_COMPILER=riscv64-linux-gnu-gcc \ >> -DCMAKE_CXX_COMPILER=riscv64-linux-gnu-gcc \ >> -DCMAKE_C_COMPILER_TARGET=riscv64-linux-gnu \ >> -DCMAKE_CXX_COMPILER_TARGET=riscv64-linux-gnu \ >> -DCMAKE_ASM_COMPILER_TARGET=riscv64-linux-gnu \ >> -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \ >> -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH \ >> -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH \ >> -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY \ >> -DCMAKE_FIND_ROOT_PATH=/usr/riscv64-linux-gnu \ >> -DCMAKE_INSTALL_PREFIX=/usr/local \ >> -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON \ >> -DCMAKE_BUILD_TYPE:STRING=debug \ >> -G Ninja \ >> -S src \ >> -B . >> >> $ ninja >> >> $ file bin/vpp >> bin/vpp: ELF 64-bit LSB executable, UCB RISC-V, version 1 (SYSV), >> dynamically linked, interpreter /lib/ld-linux-riscv64-lp64d.so.1, >> BuildID[sha1]=51ac741e44727379a0fbb5936acea4d7b8bdd624, for GNU/Linux >> 4.15.0, with debug_info, not stripped >> >> And run with qemu: >> >> $ qemu-riscv64-static ./bin/vpp unix interactive >> buffer [warn ]: numa[0] falling back to non-hugepage backed buffer >> pool (vlib_physmem_shared_map_create: pmalloc_map_pages: failed to mmap 19 >> pages at 0x404fc0 fd 4 numa 0 flags 0x11: Invalid argument) >> buffer [warn ]: numa[1] falling back to non-hugepage backed buffer >> pool (vlib_physmem_shared_map_create: pmalloc_map_pages: failed to set >> mempolicy for numa node 1: Function not implemented) >> vlib_physmem_shared_map_create: pmalloc_map_pages: failed to set >> mempolicy for numa node 1: Function not implementedsvm_queue_init:57: >> mutex_init: No such file or directory (errno 2) >> svm_queue_init:57: mutex_init: No such file or directory (errno 2) >> svm_queue_init:57: mutex_init: No such file or directory (errno 2) >> svm_queue_init:57: mutex_init: No such file or directory (errno 2) >> svm_queue_init:57: mutex_init: No such file or directory (errno 2) >> svm_queue_init:57: mutex_init: No such file or directory (errno 2) >> svm_queue_init:57: mutex_init: No such file or directory (errno 2) >> vat-plug/load [error ]: vat_plugin_register: oddbuf plugin not >> loaded... >> _____ _ ___ >> __/ __/ _ \ (_)__| | / / _ \/ _ \ >> _/ _// // / / / _ \ | |/ / ___/ ___/ >> /_/ /(_)_/\___/ |___/_/ /_/ >> >> DBGvpp# >> >> >> — >> Damjan >> >> >> >> > On 08.11.2021., at 14:59, Hrishikesh Karanjikar < >> hrishikesh.karanji...@gmail.com> wrote: >> > >> > Hi, >> > >> > Thanks for this patch. I will check it out. Which compile did you use? >> Did you cross compile or locally compiled it on Qemu or any other platform? >> > I was able to compile VPP using GCC10 locally on
Re: [vpp-dev] About Risc-V Porting
Hi, This is great. Thanks a lot. Let me try that. Hrishikesh On Mon, Nov 8, 2021 at 8:00 PM Damjan Marion wrote: > I compiled directly on the Unmatched board. I also submitted series of > patches which are fixing all > issues you are referring to. > > you can use both clang and gcc, problem with clang is that some parts of > VPP unconditionally turn address sanitiser on and there is no ASAN shared > libraries available for risc-v. > You can bypass this temporarely by commenting out test_pnat, test_vat and > test_vat2 targets. > > I also managed to cross-compile vpp on ubuntu system by using debian > multiarch libs. > > # dpkg --add-architecture riscv64 > > Update sources.list: > > deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ > impish main restricted universe multiverse > deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ > impish-updates main restricted universe multiverse > deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/ > impish-backports main restricted universe multiverse > > # apt update > > # apt install crossbuild-essential-riscv64 libssl-dev:riscv64 > uuid-dev:riscv64 libnl-3-dev:riscv6 libnl-route-3-dev:riscv64 > libbpf-dev:riscv64 > > > $ cmake \ > -DCMAKE_SYSTEM_NAME=Linux \ > -DCMAKE_SYSTEM_PROCESSOR=riscv64 \ > -DCMAKE_C_COMPILER=riscv64-linux-gnu-gcc \ > -DCMAKE_CXX_COMPILER=riscv64-linux-gnu-gcc \ > -DCMAKE_C_COMPILER_TARGET=riscv64-linux-gnu \ > -DCMAKE_CXX_COMPILER_TARGET=riscv64-linux-gnu \ > -DCMAKE_ASM_COMPILER_TARGET=riscv64-linux-gnu \ > -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \ > -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH \ > -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH \ > -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY \ > -DCMAKE_FIND_ROOT_PATH=/usr/riscv64-linux-gnu \ > -DCMAKE_INSTALL_PREFIX=/usr/local \ > -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON \ > -DCMAKE_BUILD_TYPE:STRING=debug \ > -G Ninja \ > -S src \ > -B . > > $ ninja > > $ file bin/vpp > bin/vpp: ELF 64-bit LSB executable, UCB RISC-V, version 1 (SYSV), > dynamically linked, interpreter /lib/ld-linux-riscv64-lp64d.so.1, > BuildID[sha1]=51ac741e44727379a0fbb5936acea4d7b8bdd624, for GNU/Linux > 4.15.0, with debug_info, not stripped > > And run with qemu: > > $ qemu-riscv64-static ./bin/vpp unix interactive > buffer [warn ]: numa[0] falling back to non-hugepage backed buffer > pool (vlib_physmem_shared_map_create: pmalloc_map_pages: failed to mmap 19 > pages at 0x404fc0 fd 4 numa 0 flags 0x11: Invalid argument) > buffer [warn ]: numa[1] falling back to non-hugepage backed buffer > pool (vlib_physmem_shared_map_create: pmalloc_map_pages: failed to set > mempolicy for numa node 1: Function not implemented) > vlib_physmem_shared_map_create: pmalloc_map_pages: failed to set mempolicy > for numa node 1: Function not implementedsvm_queue_init:57: mutex_init: No > such file or directory (errno 2) > svm_queue_init:57: mutex_init: No such file or directory (errno 2) > svm_queue_init:57: mutex_init: No such file or directory (errno 2) > svm_queue_init:57: mutex_init: No such file or directory (errno 2) > svm_queue_init:57: mutex_init: No such file or directory (errno 2) > svm_queue_init:57: mutex_init: No such file or directory (errno 2) > svm_queue_init:57: mutex_init: No such file or directory (errno 2) > vat-plug/load [error ]: vat_plugin_register: oddbuf plugin not > loaded... > _____ _ ___ > __/ __/ _ \ (_)__| | / / _ \/ _ \ > _/ _// // / / / _ \ | |/ / ___/ ___/ > /_/ /(_)_/\___/ |___/_/ /_/ > > DBGvpp# > > > — > Damjan > > > > > On 08.11.2021., at 14:59, Hrishikesh Karanjikar < > hrishikesh.karanji...@gmail.com> wrote: > > > > Hi, > > > > Thanks for this patch. I will check it out. Which compile did you use? > Did you cross compile or locally compiled it on Qemu or any other platform? > > I was able to compile VPP using GCC10 locally on Qemu but I had to do > other modifications. > > At many places I was able to put RiscV specific code but vector support > for RiscV is still not available so I had to use stubs for compilation to > work. > > > > Thanks, > > Hrishikesh > > > > On Mon, Nov 1, 2021 at 1:53 AM Damjan Marion wrote: > > > > Here it is: > > > > https://gerrit.fd.io/r/c/vpp/+/34298 > > > > It is early but works for me. > > > > — > > Damjan > > > > > >> On 25.10.2021., at 18:36, Hrishikesh Karanjikar < > hrishikesh.karanji...@gmail.com> wrote: > >> > >> Hi, > >> > >> Yes. SiFive HiFi
Re: [vpp-dev] About Risc-V Porting
Hi, Thanks for this patch. I will check it out. Which compile did you use? Did you cross compile or locally compiled it on Qemu or any other platform? I was able to compile VPP using GCC10 locally on Qemu but I had to do other modifications. At many places I was able to put RiscV specific code but vector support for RiscV is still not available so I had to use stubs for compilation to work. Thanks, Hrishikesh On Mon, Nov 1, 2021 at 1:53 AM Damjan Marion wrote: > > Here it is: > > https://gerrit.fd.io/r/c/vpp/+/34298 > > It is early but works for me. > > — > Damjan > > > On 25.10.2021., at 18:36, Hrishikesh Karanjikar < > hrishikesh.karanji...@gmail.com> wrote: > > Hi, > > Yes. SiFive HiFive boards are available. But they do not support Vector > Extension yet. > Also Qemu is ready for RiscV. Ubuntu images are available for RIscV. > > Thanks, > Hrishikesh > > > On Mon, Oct 25, 2021 at 9:56 PM Damjan Marion wrote: > >> >> >> >> > On 14.10.2021., at 15:43, Hrishikesh Karanjikar < >> hrishikesh.karanji...@gmail.com> wrote: >> > >> > >> > Hi, >> > >> > Is VPP ported for the Risc-V processor? >> > Is there any project going for the same? >> > >> >> I was looking at that a year ago but I was not able to find any suitable >> dev board. >> >> Is there anything new on the market? >> >> — >> Damjan >> >> > > -- > > Regards, > Hrishikesh Karanjikar > > > > > -- Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20447): https://lists.fd.io/g/vpp-dev/message/20447 Mute This Topic: https://lists.fd.io/mt/86312689/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [vpp-dev] About Risc-V Porting
Hi, Yes. SiFive HiFive boards are available. But they do not support Vector Extension yet. Also Qemu is ready for RiscV. Ubuntu images are available for RIscV. Thanks, Hrishikesh On Mon, Oct 25, 2021 at 9:56 PM Damjan Marion wrote: > > > > > On 14.10.2021., at 15:43, Hrishikesh Karanjikar < > hrishikesh.karanji...@gmail.com> wrote: > > > > > > Hi, > > > > Is VPP ported for the Risc-V processor? > > Is there any project going for the same? > > > > I was looking at that a year ago but I was not able to find any suitable > dev board. > > Is there anything new on the market? > > — > Damjan > > -- Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20384): https://lists.fd.io/g/vpp-dev/message/20384 Mute This Topic: https://lists.fd.io/mt/86312689/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[vpp-dev] About Risc-V Porting
Hi, Is VPP ported for the Risc-V processor? Is there any project going for the same? -- Regards, Hrishikesh Karanjikar -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20333): https://lists.fd.io/g/vpp-dev/message/20333 Mute This Topic: https://lists.fd.io/mt/86312689/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-