Add more options that will shave some compilation time of DPDK by removing unused parts of the code. Also add skip for memory error produced by DPDK on ARM with 2MB hugepages which isn't harmful [0].
[0] http://mails.dpdk.org/archives/dev/2024-June/296764.html Suggested-by: David Marchand <[email protected]> Signed-off-by: Ales Musil <[email protected]> --- tests/system-dpdk-macros.at | 3 ++- utilities/containers/prepare.sh | 10 ++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/tests/system-dpdk-macros.at b/tests/system-dpdk-macros.at index 440908af7..39d19f366 100644 --- a/tests/system-dpdk-macros.at +++ b/tests/system-dpdk-macros.at @@ -77,7 +77,8 @@ $1";/EAL: No \(available\|free\) .*hugepages reported/d /netdev_linux.*obtaining netdev stats via vport failed/d /qdisc_create_multiq(): Could not add multiq qdisc (2): No such file or directory/d /tap_mp_req_on_rxtx(): Failed to send start req to secondary/d -/tap_nl_dump_ext_ack(): Specified qdisc kind is unknown/d"]) +/tap_nl_dump_ext_ack(): Specified qdisc kind is unknown/d +/EAL: eal_memalloc_alloc_seg_bulk(): couldn't find suitable memseg_list/d"]) AT_CHECK([:; $2]) ]) diff --git a/utilities/containers/prepare.sh b/utilities/containers/prepare.sh index 460d34a72..49bb2ac91 100755 --- a/utilities/containers/prepare.sh +++ b/utilities/containers/prepare.sh @@ -54,9 +54,9 @@ function build_dpdk() pushd dpdk-src fi - # Switching to 'default' machine to make the dpdk cache usable on + # Switching to 'generic' platform to make the dpdk cache usable on # different CPUs. We can't be sure that all CI machines are exactly same. - DPDK_OPTS="$DPDK_OPTS -Dmachine=default" + DPDK_OPTS="$DPDK_OPTS -Dplatform=generic" # Disable building DPDK unit tests. Not needed for OVS build or tests. DPDK_OPTS="$DPDK_OPTS -Dtests=false" @@ -67,7 +67,9 @@ function build_dpdk() # OVS compilation and the "ovn-system-dpdk" unit tests (run in the CI) # only depend on virtio/tap drivers. - # We can disable all remaining drivers to save compilation time. + # We can disable all applications and remaining drivers to save + # compilation time. + DPDK_OPTS="$DPDK_OPTS -Ddisable_apps=*" DPDK_OPTS="$DPDK_OPTS -Denable_drivers=net/null,net/tap,net/virtio" # OVS depends on the vhost library (and its dependencies). # net/tap depends on the gso library. @@ -76,7 +78,7 @@ function build_dpdk() # Install DPDK using prefix. DPDK_OPTS="$DPDK_OPTS --prefix=$DPDK_INSTALL_DIR" - meson $DPDK_OPTS build + meson setup $DPDK_OPTS build ninja -C build ninja -C build install popd -- 2.45.1 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
