Compare commits
10 Commits
v24.06-rc2
...
v23.02-rc2
Author | SHA1 | Date | |
---|---|---|---|
|
be1b844214 | ||
|
c7131df872 | ||
|
a641763c5f | ||
|
d1eaed02f3 | ||
|
90c9bb871f | ||
|
c6fe2c3053 | ||
|
2a3d41cea2 | ||
|
390874b73b | ||
|
701ba9cfe3 | ||
|
42b5a8767c |
@ -13,32 +13,18 @@ ForEachMacros:
|
||||
- 'clib_bitmap_foreach'
|
||||
- 'pool_foreach'
|
||||
- 'pool_foreach_index'
|
||||
- 'pool_foreach_pointer'
|
||||
- 'vec_foreach'
|
||||
- 'vec_foreach_backwards'
|
||||
- 'vec_foreach_index'
|
||||
- 'vec_foreach_index_backwards'
|
||||
- 'vec_foreach_pointer'
|
||||
- 'vlib_foreach_rx_tx'
|
||||
- 'foreach_int'
|
||||
- 'foreach_pointer'
|
||||
- 'foreach_vlib_main'
|
||||
- 'foreach_set_bit_index'
|
||||
- 'foreach_vlib_frame_bitmap_set_bit_index'
|
||||
- 'FOREACH_ARRAY_ELT'
|
||||
- 'RTE_ETH_FOREACH_DEV'
|
||||
- 'foreach_vnet_dev_rx_queue_runtime'
|
||||
- 'foreach_vnet_dev_counter'
|
||||
- 'foreach_vnet_dev_port_rx_queue'
|
||||
- 'foreach_vnet_dev_port_tx_queue'
|
||||
- 'foreach_vnet_dev_port'
|
||||
- 'foreach_vnet_dev_args'
|
||||
- 'foreach_vnet_dev_port_args'
|
||||
|
||||
StatementMacros:
|
||||
- 'CLIB_MULTIARCH_FN'
|
||||
- 'VLIB_NODE_FN'
|
||||
- 'VNET_DEV_NODE_FN'
|
||||
- 'VNET_DEVICE_CLASS_TX_FN'
|
||||
- '__clib_section'
|
||||
- '__clib_aligned'
|
||||
|
23
.gitignore
vendored
23
.gitignore
vendored
@ -16,8 +16,14 @@
|
||||
/build-root/*.tar.xz
|
||||
/build-root/*.changes
|
||||
/build-root/rpmbuild/
|
||||
/build-root/test-coverage/
|
||||
/build-root/test-doc/
|
||||
/build-root/test-cov/
|
||||
/build-root/test/
|
||||
/test/run/
|
||||
/test/build/
|
||||
/test/coverage/
|
||||
/test/vapi_test/
|
||||
/test/doc/build/
|
||||
/build-config.mk
|
||||
/build/external/*.tar.gz
|
||||
/build/external/*.tar.xz
|
||||
@ -122,18 +128,3 @@ compile_commands.json
|
||||
/extras/hs-test/vpp-data
|
||||
/extras/hs-test/hs-test
|
||||
/extras/hs-test/http_server
|
||||
/extras/hs-test/.build.ok
|
||||
/extras/hs-test/summary/
|
||||
|
||||
# ./configure
|
||||
/CMakeFiles
|
||||
/bin
|
||||
/lib
|
||||
/.ninja_deps
|
||||
/.ninja_log
|
||||
/.cmake
|
||||
/CMakeCache.txt
|
||||
/build.ninja
|
||||
/cmake_install.cmake
|
||||
/startup.conf
|
||||
/startup.vpp
|
||||
|
@ -2,4 +2,4 @@
|
||||
host=gerrit.fd.io
|
||||
port=29418
|
||||
project=vpp
|
||||
defaultbranch=stable/2406
|
||||
defaultbranch=stable/2302
|
||||
|
@ -86,10 +86,6 @@ committers:
|
||||
company: 'intel'
|
||||
email: 'roy.fan.zhang@intel.com'
|
||||
id: 'royzhang1980'
|
||||
- name: 'Mohammed HAWARI'
|
||||
company: 'cisco'
|
||||
email: 'momohawari@gmail.com'
|
||||
id: 'momohawari'
|
||||
tsc:
|
||||
# yamllint disable rule:line-length
|
||||
approval: 'https://wiki.fd.io/view/TSC/Meeting_Minutes'
|
||||
@ -100,6 +96,3 @@ tsc:
|
||||
- type: 'Addition'
|
||||
name: 'Fan Zhang'
|
||||
link: 'https://lists.fd.io/g/vpp-dev/message/19068'
|
||||
- type: 'Approval'
|
||||
name: 'Mohammed HAWARI'
|
||||
link: 'https://ircbot.wl.linuxfoundation.org/meetings/fdio-meeting/2023/fd_io_tsc/fdio-meeting-fd_io_tsc.2023-06-01-15.00.html'
|
||||
|
86
MAINTAINERS
86
MAINTAINERS
@ -98,11 +98,6 @@ I: policer
|
||||
M: Neale Ranns <neale@graphiant.com>
|
||||
F: src/vnet/policer/
|
||||
|
||||
VNET New Device Drivers Infra
|
||||
I: dev
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
F: src/vnet/dev/
|
||||
|
||||
VNET Device Drivers
|
||||
I: devices
|
||||
Y: src/vnet/devices/pipe/FEATURE.yaml
|
||||
@ -112,7 +107,7 @@ F: src/vnet/devices/
|
||||
AF PACKET Drivers
|
||||
I: af_packet
|
||||
Y: src/plugins/af_packet/FEATURE.yaml
|
||||
M: Mohsin Kazmi <mohsin.kazmi14@gmail.com>
|
||||
M: Mohsin Kazmi <sykazmi@cisco.com>
|
||||
F: src/plugins/af_packet
|
||||
|
||||
VNET TAP Drivers
|
||||
@ -120,7 +115,7 @@ I: tap
|
||||
Y: src/vnet/devices/tap/FEATURE.yaml
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
M: Steven Luong <sluong@cisco.com>
|
||||
M: Mohsin Kazmi <mohsin.kazmi14@gmail.com>
|
||||
M: Mohsin Kazmi <sykazmi@cisco.com>
|
||||
F: src/vnet/devices/tap/
|
||||
|
||||
VNET Vhost User Driver
|
||||
@ -132,7 +127,7 @@ F: src/plugins/vhost
|
||||
VNET Native Virtio Drivers
|
||||
I: virtio
|
||||
Y: src/vnet/devices/virtio/FEATURE.yaml
|
||||
M: Mohsin Kazmi <mohsin.kazmi14@gmail.com>
|
||||
M: Mohsin Kazmi <sykazmi@cisco.com>
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
F: src/vnet/devices/virtio/
|
||||
|
||||
@ -192,14 +187,14 @@ I: sr
|
||||
M: Pablo Camarillo <pcamaril@cisco.com>
|
||||
M: Ahmed Abdelsalam <ahabdels@cisco.com>
|
||||
F: src/vnet/srv6/
|
||||
F: src/plugin/srmpls/
|
||||
F: src/vnet/srmpls/
|
||||
F: src/examples/srv6-sample-localsid/
|
||||
|
||||
VNET IPSec
|
||||
I: ipsec
|
||||
M: Neale Ranns <neale@graphiant.com>
|
||||
M: Radu Nicolau <radu.nicolau@intel.com>
|
||||
M: Fan Zhang <fanzhang.oss@gmail.com>
|
||||
M: Fan Zhang <roy.fan.zhang@intel.com>
|
||||
F: src/vnet/ipsec/
|
||||
|
||||
VNET Crypto Infra
|
||||
@ -231,12 +226,12 @@ F: src/plugins/crypto_openssl/
|
||||
Plugin - Crypto - ipsecmb
|
||||
I: crypto-ipsecmb
|
||||
M: Neale Ranns <neale@graphiant.com>
|
||||
M: Fan Zhang <fanzhang.oss@gmail.com>
|
||||
M: Fan Zhang <roy.fan.zhang@intel.com>
|
||||
F: src/plugins/crypto_ipsecmb/
|
||||
|
||||
Plugin - Crypto - sw_scheduler
|
||||
I: crypto-sw-scheduler
|
||||
M: Fan Zhang <fanzhang.oss@gmail.com>
|
||||
M: Fan Zhang <roy.fan.zhang@intel.com>
|
||||
F: src/plugs/crypto_sw_scheduler/
|
||||
|
||||
VNET L2
|
||||
@ -253,7 +248,7 @@ F: src/vnet/gre/
|
||||
VNET GSO
|
||||
I: gso
|
||||
M: Andrew Yourtchenko <ayourtch@gmail.com>
|
||||
M: Mohsin Kazmi <mohsin.kazmi14@gmail.com>
|
||||
M: Mohsin Kazmi <sykazmi@cisco.com>
|
||||
F: src/vnet/gso/
|
||||
|
||||
Plugin - MAP
|
||||
@ -293,10 +288,9 @@ F: src/vnet/udp
|
||||
|
||||
VNET VXLAN
|
||||
I: vxlan
|
||||
Y: src/plugins/vxlan/FEATURE.yaml
|
||||
M: John Lo <lojultra2020@outlook.com>
|
||||
M: Steven Luong <sluong@cisco.com>
|
||||
F: src/plugins/vxlan/
|
||||
F: src/vnet/vxlan/
|
||||
|
||||
VNET VXLAN-GPE
|
||||
I: vxlan-gpe
|
||||
@ -363,7 +357,7 @@ F: src/vnet/flow/
|
||||
|
||||
VNET Hash
|
||||
I: hash
|
||||
M: Mohsin Kazmi <mohsin.kazmi14@gmail.com>
|
||||
M: Mohsin Kazmi <sykazmi@cisco.com>
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
F: src/vnet/hash/
|
||||
|
||||
@ -410,22 +404,6 @@ I: avf
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
F: src/plugins/avf/
|
||||
|
||||
Plugin - IAVF Device driver
|
||||
I: iavf
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
F: src/plugins/dev_iavf/
|
||||
|
||||
Plugin - Amazon Elastic Network Adapter (ENA) device driver
|
||||
I: ena
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
F: src/plugins/dev_ena/
|
||||
|
||||
Plugin - Marvell Octeon device driver
|
||||
I: octeon
|
||||
M: Monendra Singh Kushwaha <kmonendra@marvell.com>
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
F: src/plugins/dev_octeon/
|
||||
|
||||
Plugin - Dispatch Trace PCAP
|
||||
I: dispatch-trace
|
||||
M: Dave Barach <vpp@barachs.net>
|
||||
@ -439,8 +417,9 @@ F: src/plugins/dpdk/
|
||||
|
||||
Plugin - DPDK Crypto
|
||||
I: dpdk-cryptodev
|
||||
M: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@outlook.com>
|
||||
M: Radu Nicolau <radu.nicolau@intel.com>
|
||||
M: Fan Zhang <fanzhang.oss@gmail.com>
|
||||
M: Fan Zhang <roy.fan.zhang@intel.com>
|
||||
F: src/plugins/dpdk/cryptodev/
|
||||
|
||||
Plugin - flowprobe
|
||||
@ -449,11 +428,6 @@ Y: src/plugins/flowprobe/FEATURE.yaml
|
||||
M: Ole Troan <otroan@employees.org>
|
||||
F: src/plugins/flowprobe/
|
||||
|
||||
Plugin - fateshare
|
||||
I: fateshare
|
||||
M: Andrew Yourtchenko <ayourtch@gmail.com>
|
||||
F: src/plugins/fateshare/
|
||||
|
||||
Plugin - http_static
|
||||
I: http_static
|
||||
M: Dave Barach <vpp@barachs.net>
|
||||
@ -597,11 +571,6 @@ M: Dave Barach <vpp@barachs.net>
|
||||
M: Florin Coras <fcoras@cisco.com>
|
||||
F: src/plugins/unittest/
|
||||
|
||||
Plugin - IDPF Device driver
|
||||
I: idpf
|
||||
M: Ting Xu <ting.xu@intel.com>
|
||||
F: src/plugins/idpf/
|
||||
|
||||
Plugin - Intel DMA engines
|
||||
I: dma_intel
|
||||
M: Marvin Liu <yong.liu@intel.com>
|
||||
@ -686,7 +655,7 @@ F: src/plugins/snort/
|
||||
|
||||
libmemif
|
||||
I: libmemif
|
||||
M: Mohsin Kazmi <sykazmi@cisco.com>
|
||||
M: Damjan Marion <damarion@cisco.com>
|
||||
F: extras/libmemif
|
||||
|
||||
gomemif
|
||||
@ -772,7 +741,7 @@ F: src/plugins/cnat
|
||||
Plugin - Wireguard
|
||||
I: wireguard
|
||||
M: Artem Glazychev <artem.glazychev@xored.com>
|
||||
M: Fan Zhang <fanzhang.oss@gmail.com>
|
||||
M: Fan Zhang <roy.fan.zhang@intel.com>
|
||||
F: src/plugins/wireguard
|
||||
|
||||
Packetforge
|
||||
@ -801,11 +770,6 @@ I: geneve
|
||||
M: community vpp-dev@lists.fd.io
|
||||
F: src/plugins/geneve/
|
||||
|
||||
Plugin - IP session redirect
|
||||
I: ip_session_redirect
|
||||
M: Benoît Ganne <bganne@cisco.com>
|
||||
F: src/plugins/ip_session_redirect/
|
||||
|
||||
Plugin - linux-cp
|
||||
I: linux-cp
|
||||
M: Neale Ranns <neale@graphiant.com>
|
||||
@ -837,21 +801,6 @@ I: prom
|
||||
M: Florin Coras <fcoras@cisco.com>
|
||||
F: src/plugins/prom
|
||||
|
||||
Plugin - BPF Trace Filter
|
||||
I: bpf_trace_filter
|
||||
M: Mohammed Hawari <mohammed@hawari.fr>
|
||||
F: src/plugins/bpf_trace_filter
|
||||
|
||||
Plugin - NPTv6
|
||||
I: npt66
|
||||
M: Ole Troan <otroan@employees.org>
|
||||
F: src/plugins/npt66
|
||||
|
||||
Plugin - Trace node
|
||||
I: tracenode
|
||||
M: Maxime Peim <mpeim@cisco.com>
|
||||
F: src/plugins/tracenode
|
||||
|
||||
cJSON
|
||||
I: cjson
|
||||
M: Ole Troan <ot@cisco.com>
|
||||
@ -875,7 +824,7 @@ F: src/extras/rpm/opensuse
|
||||
|
||||
VPP StrongSwan Daemon
|
||||
I: vpp-swan
|
||||
M: Fan Zhang <fanzhang.oss@gmail.com>
|
||||
M: Fan Zhang <roy.fan.zhang@intel.com>
|
||||
M: Gabriel Oginski <gabrielx.oginski@intel.com>
|
||||
F: extras/strongswan/vpp_sswan
|
||||
|
||||
@ -892,8 +841,3 @@ M: vpp-dev Mailing List <vpp-dev@fd.io>
|
||||
C: Missing Maintainer
|
||||
F: *
|
||||
F: */
|
||||
|
||||
Netmap
|
||||
I: netmap
|
||||
M: Tom Jones <thj@freebsd.org>
|
||||
F: src/plugins/netmap/
|
||||
|
@ -42,4 +42,4 @@ external_configure = echo
|
||||
|
||||
external_build = echo
|
||||
|
||||
external_install = $(MAKE) $(DPDK_MAKE_ARGS) -C external ebuild-build ebuild-install
|
||||
external_install = make $(DPDK_MAKE_ARGS) -C external ebuild-build ebuild-install
|
||||
|
@ -30,15 +30,6 @@ vpp_cmake_args += -DCMAKE_PREFIX_PATH:PATH="$(vpp_cmake_prefix_path)"
|
||||
ifeq ("$(V)","1")
|
||||
vpp_cmake_args += -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
|
||||
endif
|
||||
ifneq ($(VPP_PLATFORM),)
|
||||
vpp_cmake_args += -DVPP_PLATFORM="$(VPP_PLATFORM)"
|
||||
endif
|
||||
ifneq ($(VPP_EXCLUDED_PLUGINS),)
|
||||
vpp_cmake_args += -DVPP_EXCLUDED_PLUGINS="$(VPP_EXCLUDED_PLUGINS)"
|
||||
endif
|
||||
ifneq (${SOURCE_DATE_EPOCH}),)
|
||||
vpp_cmake_args += -DVPP_SOURCE_DATE_EPOCH="$(SOURCE_DATE_EPOCH)"
|
||||
endif
|
||||
|
||||
ifneq ($(VPP_EXTRA_CMAKE_ARGS),)
|
||||
vpp_cmake_args += $(VPP_EXTRA_CMAKE_ARGS)
|
||||
|
@ -39,7 +39,7 @@
|
||||
######################################################################
|
||||
|
||||
# Scripts require non-POSIX parts of bash
|
||||
SHELL := $(shell which bash)
|
||||
SHELL := /bin/bash
|
||||
|
||||
# Where this makefile lives
|
||||
MU_BUILD_ROOT_DIR = $(shell pwd)
|
||||
@ -365,7 +365,7 @@ NATIVE_TOOLS_$(IS_LINUX) += $(NATIVE_TOOLS_LINUX)
|
||||
CROSS_TOOLS_$(IS_LINUX) += glibc gcc
|
||||
|
||||
# must be first for bootstrapping
|
||||
NATIVE_TOOLS = findutils $(MAKE)
|
||||
NATIVE_TOOLS = findutils make
|
||||
|
||||
# basic tools needed for build system
|
||||
NATIVE_TOOLS += git automake autoconf libtool texinfo tar
|
||||
@ -614,7 +614,7 @@ check_platform = \
|
||||
-a ! -x "`which 2> /dev/null $${target_gcc}`" ] ; then \
|
||||
$(call build_msg_fn, \
|
||||
No cross-compiler found for platform $(PLATFORM) target $(TARGET); \
|
||||
try $(MAKE) PLATFORM=$(PLATFORM) install-tools) ; \
|
||||
try make PLATFORM=$(PLATFORM) install-tools) ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
|
||||
@ -650,18 +650,11 @@ configure_check_timestamp = \
|
||||
# /proc/cpuinfo does not exist on platforms without a /proc and on some
|
||||
# platforms, notably inside containers, it has no content. In those cases
|
||||
# we assume there's 1 processor; we use 2*ncpu for the -j option.
|
||||
#
|
||||
# On FreeBSD we can call nproc to get the number of processors.
|
||||
#
|
||||
# NB: GNU Make 4.2 will let us use '$(file </proc/cpuinfo)' to both test
|
||||
# for file presence and content; for now this will have to do.
|
||||
ifndef MAKE_PARALLEL_JOBS
|
||||
ifeq ($(shell uname), FreeBSD)
|
||||
MAKE_PARALLEL_JOBS = $(shell nproc)
|
||||
else
|
||||
MAKE_PARALLEL_JOBS = $(if $(shell [ -f /proc/cpuinfo ] && head /proc/cpuinfo), \
|
||||
$(shell grep -c ^processor /proc/cpuinfo), 2)
|
||||
endif # FreeBSD
|
||||
endif
|
||||
MAKE_PARALLEL_FLAGS ?= $(if $($(PACKAGE)_make_parallel_fails),,-j $(MAKE_PARALLEL_JOBS))
|
||||
|
||||
@ -807,7 +800,7 @@ pull-all:
|
||||
$(call build_msg_fn,Git pull build tools) ; \
|
||||
$(call tool_make_target_fn,pull-all) ; \
|
||||
$(call build_msg_fn,Git pull packages for platform $(PLATFORM)) ; \
|
||||
$(MAKE) PLATFORM=$(PLATFORM) $(patsubst %,%-pull-all,$(ROOT_PACKAGES))
|
||||
make PLATFORM=$(PLATFORM) $(patsubst %,%-pull-all,$(ROOT_PACKAGES))
|
||||
|
||||
.PHONY: %-diff
|
||||
%-diff:
|
||||
@ -969,13 +962,13 @@ $(PLATFORM_IMAGE_DIR)/ro.img ro-image: $(patsubst %,%-find-source,$(ROOT_PACKAGE
|
||||
chmod 0755 $${tmp_dir} ; \
|
||||
cd $${tmp_dir} ; \
|
||||
trap "rm -rf $${tmp_dir}" err ; \
|
||||
fakeroot $(SHELL) -c "{ \
|
||||
fakeroot /bin/bash -c "{ \
|
||||
set -eu$(BUILD_DEBUG) ; \
|
||||
$(MAKE) -C $(MU_BUILD_ROOT_DIR) IMAGE_INSTALL_DIR=$${tmp_dir} \
|
||||
$(patsubst %,%-image_install, \
|
||||
basic_system \
|
||||
$(ROOT_PACKAGES)) ; \
|
||||
: $(MAKE) dev directory ; \
|
||||
: make dev directory ; \
|
||||
$(linuxrc_makedev) ; \
|
||||
echo @@@@ Relocating ELF executables to run in / @@@@ ; \
|
||||
scripts/set-rpath /$(arch_lib_dir):/lib ; \
|
||||
@ -1061,7 +1054,7 @@ rw-image: rw-image-check-type ro-image
|
||||
chmod 0755 $${tmp_dir} ; \
|
||||
cd $${tmp_dir} ; \
|
||||
trap "rm -rf $${tmp_dir}" err ; \
|
||||
fakeroot $(SHELL) -c "{ \
|
||||
fakeroot /bin/bash -c "{ \
|
||||
set -eu$(BUILD_DEBUG) ; \
|
||||
$(linuxrc_makedev) ; \
|
||||
$(call rw_image_embed_ro_image_fn,$${ro_image}) ; \
|
||||
|
@ -1,4 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
#!/bin/bash
|
||||
|
||||
# Copyright (c) 2015 Cisco and/or its affiliates.
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
|
30
build/external/Makefile
vendored
30
build/external/Makefile
vendored
@ -12,21 +12,17 @@
|
||||
# limitations under the License.
|
||||
|
||||
# Scripts require non-POSIX parts of bash
|
||||
SHELL := $(shell which bash)
|
||||
SHELL := /bin/bash
|
||||
|
||||
DL_CACHE_DIR = $(HOME)/Downloads
|
||||
MAKE ?= make
|
||||
MAKE_ARGS ?= -j
|
||||
BUILD_DIR ?= $(CURDIR)/_build
|
||||
INSTALL_DIR ?= $(CURDIR)/_install
|
||||
PKG_VERSION ?= $(shell git describe --abbrev=0 --match 'v[0-9]*' | cut -d- -f1 | cut -dv -f2 | cut -d. -f1,2)
|
||||
PKG_SUFFIX ?= $(shell git log --oneline v$(PKG_VERSION)-rc0.. . | wc -l)
|
||||
SOURCE_DATE_EPOCH ?= $(shell git log -1 --pretty=%ct .)
|
||||
ifeq ($shell(uname), FreeBSD)
|
||||
JOBS := $(shell nproc)
|
||||
else
|
||||
JOBS := $(if $(shell [ -f /proc/cpuinfo ] && head /proc/cpuinfo),\
|
||||
$(shell grep -c ^processor /proc/cpuinfo), 2)
|
||||
endif # FreeBSD
|
||||
|
||||
B := $(BUILD_DIR)
|
||||
I := $(INSTALL_DIR)
|
||||
@ -38,35 +34,23 @@ CMAKE?=cmake
|
||||
endif
|
||||
|
||||
ARCH_X86_64=$(filter x86_64,$(shell uname -m))
|
||||
AARCH64=$(filter aarch64,$(shell uname -m))
|
||||
|
||||
include packages.mk
|
||||
include packages/ipsec-mb.mk
|
||||
include packages/quicly.mk
|
||||
ifneq ($(shell uname), FreeBSD)
|
||||
include packages/rdma-core.mk
|
||||
include packages/dpdk.mk
|
||||
include packages/xdp-tools.mk
|
||||
include packages/octeon-roc.mk
|
||||
endif # FreeBSD
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
@rm -rf $(B) $(I)
|
||||
|
||||
.PHONY: install
|
||||
ifeq ($(shell uname), FreeBSD)
|
||||
install: $(if $(ARCH_X86_64), ipsec-mb-install) quicly-install
|
||||
else
|
||||
install: $(if $(ARCH_X86_64), ipsec-mb-install) dpdk-install rdma-core-install quicly-install xdp-tools-install $(if $(AARCH64), octeon-roc-install)
|
||||
endif # FreeBSD
|
||||
install: $(if $(ARCH_X86_64), ipsec-mb-install) dpdk-install rdma-core-install quicly-install xdp-tools-install
|
||||
|
||||
.PHONY: config
|
||||
ifeq ($(shell uname), FreeBSD)
|
||||
config: $(if $(ARCH_X86_64), ipsec-mb-config) quicly-build
|
||||
else
|
||||
config: $(if $(ARCH_X86_64), ipsec-mb-config) dpdk-config rdma-core-config quicly-build
|
||||
endif # FreeBSD
|
||||
|
||||
##############################################################################
|
||||
# .deb packaging
|
||||
@ -84,7 +68,7 @@ deb/debian/changelog: Makefile
|
||||
@echo "" >> $@
|
||||
@echo " * Version $(DEB_VER)" >> $@
|
||||
@echo "" >> $@
|
||||
@echo " -- VPP Dev <vpp-dev@lists.fd.io> $(shell date -R --date=@${SOURCE_DATE_EPOCH})" >> $@
|
||||
@echo " -- VPP Dev <vpp-dev@lists.fd.io> $(shell date -R)" >> $@
|
||||
|
||||
$(DEV_DEB): deb/debian/changelog
|
||||
@cd deb && dpkg-buildpackage -b -uc -us
|
||||
@ -172,17 +156,17 @@ ifeq ($(INSTALLED_VER)$(INSTALLED_RPM_VER),)
|
||||
@echo "development package by invoking 'make install-ext-deps'"
|
||||
@echo "from the top level directory"
|
||||
@echo "=========================================================="
|
||||
$(MAKE) config
|
||||
make config
|
||||
else
|
||||
ifneq ($(INSTALLED_VER),)
|
||||
make check-deb
|
||||
endif
|
||||
ifneq ($(INSTALLED_RPM_VER),)
|
||||
$(MAKE) check-rpm
|
||||
make check-rpm
|
||||
endif
|
||||
endif
|
||||
|
||||
ebuild-install:
|
||||
ifeq ($(INSTALLED_VER)$(INSTALLED_RPM_VER),)
|
||||
$(MAKE) install
|
||||
make install
|
||||
endif
|
||||
|
1
build/external/deb/debian/rules
vendored
1
build/external/deb/debian/rules
vendored
@ -26,7 +26,6 @@ override_dh_auto_configure:
|
||||
|
||||
override_dh_install:
|
||||
make $(MAKE_ARGS) install
|
||||
@mkdir -p $(INSTALL_DIR)
|
||||
dh_install -p$(PKG) --autodest /opt
|
||||
|
||||
override_dh_shlibdeps:
|
||||
|
3
build/external/mlx_rdma_dpdk_matrix.txt
vendored
3
build/external/mlx_rdma_dpdk_matrix.txt
vendored
@ -1,2 +1 @@
|
||||
rdma=49.0 dpdk=23.11
|
||||
rdma=51.0 dpdk=24.03
|
||||
rdma=41.0 dpdk=22.07
|
23
build/external/packages.mk
vendored
23
build/external/packages.mk
vendored
@ -101,18 +101,11 @@ define $1_config_cmds
|
||||
endef
|
||||
endif
|
||||
|
||||
ifneq ($(filter $1,$(VPP_SKIP_EXTERNAL)), $1)
|
||||
$(B)/.$1.config.ok: $(B)/.$1.patch.ok $(addprefix $(B)/.,$(addsuffix .install.ok,$($1_depends)))
|
||||
$(B)/.$1.config.ok: $(B)/.$1.patch.ok $(addsuffix -install,$($1_depends))
|
||||
$$(call h1,"configuring $1 $($1_version) - log: $$($1_config_log)")
|
||||
@mkdir -p $$($1_build_dir)
|
||||
$$(call $1_config_cmds)
|
||||
@touch $$@
|
||||
else
|
||||
$(B)/.$1.config.ok:
|
||||
$$(call h1,"Skipping $1 $($1_version)")
|
||||
@mkdir -p $(B)
|
||||
@touch $$@
|
||||
endif
|
||||
|
||||
.PHONY: $1-config
|
||||
$1-config: $(B)/.$1.config.ok
|
||||
@ -127,17 +120,10 @@ define $1_build_cmds
|
||||
endef
|
||||
endif
|
||||
|
||||
ifneq ($(filter $1,$(VPP_SKIP_EXTERNAL)), $1)
|
||||
$(B)/.$1.build.ok: $(B)/.$1.config.ok
|
||||
$$(call h1,"building $1 $($1_version) - log: $$($1_build_log)")
|
||||
$$(call $1_build_cmds)
|
||||
@touch $$@
|
||||
else
|
||||
$(B)/.$1.build.ok:
|
||||
$$(call h1,"Skipping $1 $($1_version)")
|
||||
@mkdir -p $(B)
|
||||
@touch $$@
|
||||
endif
|
||||
|
||||
.PHONY: $1-build
|
||||
$1-build: $(B)/.$1.build.ok
|
||||
@ -152,17 +138,10 @@ define $1_install_cmds
|
||||
endef
|
||||
endif
|
||||
|
||||
ifneq ($(filter $1,$(VPP_SKIP_EXTERNAL)), $1)
|
||||
$(B)/.$1.install.ok: $(B)/.$1.build.ok
|
||||
$$(call h1,"installing $1 $($1_version) - log: $$($1_install_log)")
|
||||
$$(call $1_install_cmds)
|
||||
@touch $$@
|
||||
else
|
||||
$(B)/.$1.install.ok:
|
||||
$$(call h1,"Skipping $1 $($1_version)")
|
||||
@mkdir -p $(B)
|
||||
@touch $$@
|
||||
endif
|
||||
|
||||
.PHONY: $1-install
|
||||
$1-install: $(B)/.$1.install.ok
|
||||
|
31
build/external/packages/dpdk.mk
vendored
31
build/external/packages/dpdk.mk
vendored
@ -19,25 +19,19 @@ DPDK_FAILSAFE_PMD ?= n
|
||||
DPDK_MACHINE ?= default
|
||||
DPDK_MLX_IBV_LINK ?= static
|
||||
|
||||
dpdk_version ?= 24.03
|
||||
dpdk_version ?= 22.07
|
||||
dpdk_base_url ?= http://fast.dpdk.org/rel
|
||||
dpdk_tarball := dpdk-$(dpdk_version).tar.xz
|
||||
dpdk_tarball_md5sum_24.03 := a98da848d6ba09808ef00f9a26aaa49a
|
||||
dpdk_tarball_md5sum_23.11 := 896c09f5b45b452bd77287994650b916
|
||||
dpdk_tarball_md5sum_23.07 := 2b6d57f077585cb15b885482362fd47f
|
||||
dpdk_tarball_md5sum_23.03 := 3cf8ebbcd412d5726db230f2eeb90cc9
|
||||
dpdk_tarball_md5sum_22.11.1 := 0594708fe42ce186a55b0235c6e20cfe
|
||||
dpdk_tarball_md5sum_22.07 := fb73b58b80b1349cd05fe9cf6984afd4
|
||||
dpdk_tarball_md5sum_22.03 := a07ca8839f98062f46e1cc359735cce8
|
||||
dpdk_tarball_md5sum_21.11 := 58660bbbe9e95abce86e47692b196555
|
||||
dpdk_tarball_md5sum_21.08 := de33433a1806280996a0ecbe66e3642f
|
||||
dpdk_tarball_md5sum_21.05 := a78bba290b11d9717d1272cc6bfaf7c3
|
||||
dpdk_tarball_md5sum := $(dpdk_tarball_md5sum_$(dpdk_version))
|
||||
dpdk_url := $(dpdk_base_url)/$(dpdk_tarball)
|
||||
dpdk_tarball_strip_dirs := 1
|
||||
ifeq ($(shell uname), FreeBSD)
|
||||
dpdk_depends := $(if $(ARCH_X86_64), ipsec-mb)
|
||||
else
|
||||
dpdk_depends := rdma-core $(if $(ARCH_X86_64), ipsec-mb)
|
||||
endif
|
||||
|
||||
DPDK_MLX_DEFAULT := $(shell if grep -q "rdma=$(rdma-core_version) dpdk=$(dpdk_version)" mlx_rdma_dpdk_matrix.txt; then echo 'y'; else echo 'n'; fi)
|
||||
DPDK_MLX4_PMD ?= $(DPDK_MLX_DEFAULT)
|
||||
DPDK_MLX5_PMD ?= $(DPDK_MLX_DEFAULT)
|
||||
@ -137,19 +131,14 @@ endif
|
||||
DPDK_DRIVERS_DISABLED := $(shell echo $(DPDK_DRIVERS_DISABLED) | tr -d '\\\t ')
|
||||
DPDK_LIBS_DISABLED := $(shell echo $(DPDK_LIBS_DISABLED) | tr -d '\\\t ')
|
||||
|
||||
SED=sed
|
||||
ifeq ($shell(uname), FreeBSD)
|
||||
SED=gsed
|
||||
endif
|
||||
|
||||
HASH := \#
|
||||
# post-meson-setup snippet to alter rte_build_config.h
|
||||
define dpdk_config
|
||||
if grep -q RTE_$(1) $(dpdk_src_dir)/config/rte_config.h ; then \
|
||||
$(SED) -i -e 's/$(HASH)define RTE_$(1).*/$(HASH)define RTE_$(1) $(DPDK_$(1))/' \
|
||||
sed -i -e 's/$(HASH)define RTE_$(1).*/$(HASH)define RTE_$(1) $(DPDK_$(1))/' \
|
||||
$(dpdk_src_dir)/config/rte_config.h; \
|
||||
elif grep -q RTE_$(1) $(dpdk_build_dir)/rte_build_config.h ; then \
|
||||
$(SED) -i -e 's/$(HASH)define RTE_$(1).*/$(HASH)define RTE_$(1) $(DPDK_$(1))/' \
|
||||
sed -i -e 's/$(HASH)define RTE_$(1).*/$(HASH)define RTE_$(1) $(DPDK_$(1))/' \
|
||||
$(dpdk_build_dir)/rte_build_config.h; \
|
||||
else \
|
||||
echo '$(HASH)define RTE_$(1) $(DPDK_$(1))' \
|
||||
@ -165,7 +154,7 @@ if [[ "$(DPDK_$(1))" == "y" ]]; then \
|
||||
>> $(dpdk_build_dir)/rte_build_config.h ; \
|
||||
fi; \
|
||||
elif [[ "$(DPDK_$(1))" == "n" ]]; then \
|
||||
$(SED) -i '/$(HASH)define RTE_$(1) .*/d' $(dpdk_build_dir)/rte_build_config.h \
|
||||
sed -i '/$(HASH)define RTE_$(1) .*/d' $(dpdk_build_dir)/rte_build_config.h \
|
||||
$(dpdk_src_dir)/config/rte_config.h ; \
|
||||
fi
|
||||
endef
|
||||
@ -175,13 +164,11 @@ DPDK_MESON_ARGS = \
|
||||
--libdir lib \
|
||||
--prefix $(dpdk_install_dir) \
|
||||
-Dtests=false \
|
||||
-Denable_driver_sdk=true \
|
||||
"-Ddisable_drivers=$(DPDK_DRIVERS_DISABLED)" \
|
||||
"-Ddisable_libs=$(DPDK_LIBS_DISABLED)" \
|
||||
-Db_pie=true \
|
||||
-Dmachine=$(DPDK_MACHINE) \
|
||||
--buildtype=$(DPDK_BUILD_TYPE) \
|
||||
-Denable_kmods=false \
|
||||
${DPDK_MLX_CONFIG_FLAG}
|
||||
|
||||
PIP_DOWNLOAD_DIR = $(CURDIR)/downloads/
|
||||
@ -193,8 +180,8 @@ define dpdk_config_cmds
|
||||
mkdir -p ../dpdk-meson-venv && \
|
||||
python3 -m venv ../dpdk-meson-venv && \
|
||||
source ../dpdk-meson-venv/bin/activate && \
|
||||
(if ! ls $(PIP_DOWNLOAD_DIR)meson* ; then pip3 download -d $(PIP_DOWNLOAD_DIR) -f $(DL_CACHE_DIR) meson==0.55.3 setuptools wheel pyelftools; fi) && \
|
||||
pip3 install --no-index --find-links=$(PIP_DOWNLOAD_DIR) meson==0.55.3 pyelftools && \
|
||||
(if ! ls $(PIP_DOWNLOAD_DIR)meson* ; then pip3 download -d $(PIP_DOWNLOAD_DIR) -f $(DL_CACHE_DIR) meson==0.55 setuptools wheel pyelftools; fi) && \
|
||||
pip3 install --no-index --find-links=$(PIP_DOWNLOAD_DIR) meson==0.55 pyelftools && \
|
||||
PKG_CONFIG_PATH=$(dpdk_install_dir)/lib/pkgconfig meson setup $(dpdk_src_dir) \
|
||||
$(dpdk_build_dir) \
|
||||
$(DPDK_MESON_ARGS) \
|
||||
|
24
build/external/packages/ipsec-mb.mk
vendored
24
build/external/packages/ipsec-mb.mk
vendored
@ -11,21 +11,18 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
ipsec-mb_version := 1.5
|
||||
ipsec-mb_patch_version := 0
|
||||
ipsec-mb_version_str := $(ipsec-mb_version).$(ipsec-mb_patch_version)
|
||||
ipsec-mb_version := 1.3
|
||||
ipsec-mb_tarball := v$(ipsec-mb_version).tar.gz
|
||||
ipsec-mb_tarball_md5sum_0.54 := 258941f7ba90c275fcf9d19c622d2d21
|
||||
ipsec-mb_tarball_md5sum_0.55 := deca674bca7ae2282890e1fa7f953609
|
||||
ipsec-mb_tarball_md5sum_1.0 := 906e701937751e761671dc83a41cff65
|
||||
ipsec-mb_tarball_md5sum_1.1 := 3916471d3713d27e42473cb6af9c65e5
|
||||
ipsec-mb_tarball_md5sum_1.2 := f551d9c208893a436c1f5c146a615bd6
|
||||
ipsec-mb_tarball_md5sum_1.3 := d8692db9efe32a263b61f12ac0dca950
|
||||
ipsec-mb_tarball_md5sum_1.4 := fddba2611f822296ddd82d1c31d22b24
|
||||
ipsec-mb_tarball_md5sum_1.5 := f18680f8dd43208a15a19a494423bdb9
|
||||
|
||||
ipsec-mb_tarball_md5sum := $(ipsec-mb_tarball_md5sum_$(ipsec-mb_version))
|
||||
ipsec-mb_tarball_strip_dirs := 1
|
||||
ipsec-mb_url := http://github.com/intel/intel-ipsec-mb/archive/$(ipsec-mb_tarball)
|
||||
ipsec-mb_system_header := $(wildcard /usr/include/intel-ipsec-mb.h)
|
||||
|
||||
define ipsec-mb_config_cmds
|
||||
@true
|
||||
@ -41,22 +38,7 @@ define ipsec-mb_build_cmds
|
||||
EXTRA_CFLAGS="-g -msse4.2" > $(ipsec-mb_build_log)
|
||||
endef
|
||||
|
||||
ifneq ($(ipsec-mb_system_header), )
|
||||
ipsec-mb_system_ver_str := $(shell awk '/^#define\s+IMB_VERSION_STR/ { print $$3 }' \
|
||||
$(ipsec-mb_system_header))
|
||||
endif
|
||||
|
||||
define ipsec-mb_install_cmds
|
||||
if [[ -n "$(ipsec-mb_system_header)" ]]; then \
|
||||
if [[ "$(ipsec-mb_system_ver_str)" != "$(ipsec-mb_version_str)" ]]; then \
|
||||
echo "Intel-ipsec-mb build Error: System installed Intel IPsec-mb lib \
|
||||
version mismatch with target version, \
|
||||
expecting $(ipsec-mb_version_str), \
|
||||
but system has $(ipsec-mb_system_ver_str) \
|
||||
please align/remove system installed $(ipsec-mb_system_header) before building."; \
|
||||
exit 1; \
|
||||
fi \
|
||||
fi
|
||||
@mkdir -p $(ipsec-mb_install_dir)/include
|
||||
@mkdir -p $(ipsec-mb_install_dir)/lib
|
||||
@cp $(ipsec-mb_src_dir)/lib/intel-ipsec-mb.h $(ipsec-mb_install_dir)/include
|
||||
|
26
build/external/packages/octeon-roc.mk
vendored
26
build/external/packages/octeon-roc.mk
vendored
@ -1,26 +0,0 @@
|
||||
# Copyright (c) 2023 Marvell.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# https://spdx.org/licenses/Apache-2.0.html
|
||||
|
||||
octeon-roc_version := 0.5
|
||||
octeon-roc_tarball := v$(octeon-roc_version).tar.gz
|
||||
octeon-roc_tarball_md5sum := 76bc56c84935da944bbf340fe5283ef0
|
||||
|
||||
octeon-roc_tarball_strip_dirs := 1
|
||||
octeon-roc_url := https://github.com/MarvellEmbeddedProcessors/marvell-octeon-roc/archive/refs/tags/$(octeon-roc_tarball)
|
||||
|
||||
define octeon-roc_config_cmds
|
||||
@true
|
||||
endef
|
||||
|
||||
define octeon-roc_build_cmds
|
||||
@cd ${octeon-roc_src_dir} && rm -f $(octeon-roc_build_log) && $(CMAKE) ${octeon-roc_src_dir} -DCMAKE_INSTALL_PREFIX='$(octeon-roc_install_dir)' >> $(octeon-roc_build_log)
|
||||
@$(MAKE) -C ${octeon-roc_src_dir} >> $(octeon-roc_build_log)
|
||||
endef
|
||||
|
||||
define octeon-roc_install_cmds
|
||||
@$(MAKE) -C ${octeon-roc_src_dir} install >> $(octeon-roc_install_log)
|
||||
endef
|
||||
|
||||
$(eval $(call package,octeon-roc))
|
||||
|
16
build/external/packages/rdma-core.mk
vendored
16
build/external/packages/rdma-core.mk
vendored
@ -13,20 +13,10 @@
|
||||
|
||||
RDMA_CORE_DEBUG?=n
|
||||
|
||||
# NOTE: When updating the rdma-core version in conjunction with an update of the
|
||||
# dpdk version, please update ../mlx_rdma_dpdk_matrix.txt to include the
|
||||
# updated version matrix with the dpdk and rdma-core version.
|
||||
#
|
||||
# Also, please verify that the DPDK RDMA driver is built into the dpdk plugin
|
||||
# as follows:
|
||||
# 1. from workspace root directory, 'make -C build/external build-deb'
|
||||
# 2. Verify that the file build/external/dpdk_mlx_default.sh was generated
|
||||
# and contains 'DPDK_MLX_DEFAULT=y'
|
||||
#
|
||||
rdma-core_version := 51.0
|
||||
rdma-core_version := 41.0
|
||||
rdma-core_tarball := rdma-core-$(rdma-core_version).tar.gz
|
||||
rdma-core_tarball_md5sum_49.0 := 9fe3909f19c7e0276c9e546411bbb49c
|
||||
rdma-core_tarball_md5sum_51.0 := ed95d79f782ea00bd7233d453abd60b3
|
||||
rdma-core_tarball_md5sum_39.1 := 63ba4632fd01173a2331e5b990373330
|
||||
rdma-core_tarball_md5sum_41.0 := 2250389cb61a7130133e6411fdeef2f9
|
||||
rdma-core_tarball_md5sum := $(rdma-core_tarball_md5sum_$(rdma-core_version))
|
||||
rdma-core_tarball_strip_dirs := 1
|
||||
rdma-core_url := http://github.com/linux-rdma/rdma-core/releases/download/v$(rdma-core_version)/$(rdma-core_tarball)
|
||||
|
@ -1,54 +0,0 @@
|
||||
From baa172f1a9e370a0549a31840c3cd148046d1d84 Mon Sep 17 00:00:00 2001
|
||||
From: Xinyao Cai <xinyao.cai@intel.com>
|
||||
Date: Tue, 18 Apr 2023 16:37:17 +0800
|
||||
Subject: [PATCH] allow the use of -a and -b flag the same time in EAL
|
||||
parameters.
|
||||
|
||||
---
|
||||
lib/eal/common/eal_common_options.c | 14 --------------
|
||||
1 file changed, 14 deletions(-)
|
||||
|
||||
diff --git a/lib/eal/common/eal_common_options.c b/lib/eal/common/eal_common_options.c
|
||||
index 0305933698..0d8f9c5a38 100644
|
||||
--- a/lib/eal/common/eal_common_options.c
|
||||
+++ b/lib/eal/common/eal_common_options.c
|
||||
@@ -1623,24 +1623,15 @@ int
|
||||
eal_parse_common_option(int opt, const char *optarg,
|
||||
struct internal_config *conf)
|
||||
{
|
||||
- static int b_used;
|
||||
- static int a_used;
|
||||
-
|
||||
switch (opt) {
|
||||
case 'b':
|
||||
- if (a_used)
|
||||
- goto ba_conflict;
|
||||
if (eal_option_device_add(RTE_DEVTYPE_BLOCKED, optarg) < 0)
|
||||
return -1;
|
||||
- b_used = 1;
|
||||
break;
|
||||
|
||||
case 'a':
|
||||
- if (b_used)
|
||||
- goto ba_conflict;
|
||||
if (eal_option_device_add(RTE_DEVTYPE_ALLOWED, optarg) < 0)
|
||||
return -1;
|
||||
- a_used = 1;
|
||||
break;
|
||||
/* coremask */
|
||||
case 'c': {
|
||||
@@ -1929,11 +1920,6 @@ eal_parse_common_option(int opt, const char *optarg,
|
||||
}
|
||||
|
||||
return 0;
|
||||
-
|
||||
-ba_conflict:
|
||||
- RTE_LOG(ERR, EAL,
|
||||
- "Options allow (-a) and block (-b) can't be used at the same time\n");
|
||||
- return -1;
|
||||
}
|
||||
|
||||
static void
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,54 +0,0 @@
|
||||
From baa172f1a9e370a0549a31840c3cd148046d1d84 Mon Sep 17 00:00:00 2001
|
||||
From: Xinyao Cai <xinyao.cai@intel.com>
|
||||
Date: Tue, 18 Apr 2023 16:37:17 +0800
|
||||
Subject: [PATCH] allow the use of -a and -b flag the same time in EAL
|
||||
parameters.
|
||||
|
||||
---
|
||||
lib/eal/common/eal_common_options.c | 14 --------------
|
||||
1 file changed, 14 deletions(-)
|
||||
|
||||
diff --git a/lib/eal/common/eal_common_options.c b/lib/eal/common/eal_common_options.c
|
||||
index 0305933698..0d8f9c5a38 100644
|
||||
--- a/lib/eal/common/eal_common_options.c
|
||||
+++ b/lib/eal/common/eal_common_options.c
|
||||
@@ -1623,24 +1623,15 @@ int
|
||||
eal_parse_common_option(int opt, const char *optarg,
|
||||
struct internal_config *conf)
|
||||
{
|
||||
- static int b_used;
|
||||
- static int a_used;
|
||||
-
|
||||
switch (opt) {
|
||||
case 'b':
|
||||
- if (a_used)
|
||||
- goto ba_conflict;
|
||||
if (eal_option_device_add(RTE_DEVTYPE_BLOCKED, optarg) < 0)
|
||||
return -1;
|
||||
- b_used = 1;
|
||||
break;
|
||||
|
||||
case 'a':
|
||||
- if (b_used)
|
||||
- goto ba_conflict;
|
||||
if (eal_option_device_add(RTE_DEVTYPE_ALLOWED, optarg) < 0)
|
||||
return -1;
|
||||
- a_used = 1;
|
||||
break;
|
||||
/* coremask */
|
||||
case 'c': {
|
||||
@@ -1929,11 +1920,6 @@ eal_parse_common_option(int opt, const char *optarg,
|
||||
}
|
||||
|
||||
return 0;
|
||||
-
|
||||
-ba_conflict:
|
||||
- RTE_LOG(ERR, EAL,
|
||||
- "Options allow (-a) and block (-b) can't be used at the same time\n");
|
||||
- return -1;
|
||||
}
|
||||
|
||||
static void
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,63 +0,0 @@
|
||||
From 6429e38ae77c7998c84d5a0ed26b4fb0d81424c1 Mon Sep 17 00:00:00 2001
|
||||
From: Ting Xu <ting.xu@intel.com>
|
||||
Date: Thu, 15 Jun 2023 01:33:37 +0000
|
||||
Subject: [PATCH v1] net: fix pkt length type for raw pattern
|
||||
|
||||
In current pattern parsing function for raw pattern, the packet length
|
||||
variable is defined as uint8_t, which is too small for a large packet,
|
||||
such as srv6. Change the type to uint16_t.
|
||||
|
||||
Fixes: 1b9c68120a1c ("net/ice: enable protocol agnostic flow offloading
|
||||
in RSS")
|
||||
|
||||
Signed-off-by: Ting Xu <ting.xu@intel.com>
|
||||
---
|
||||
drivers/net/iavf/iavf_hash.c | 2 +-
|
||||
drivers/net/ice/ice_fdir_filter.c | 2 +-
|
||||
drivers/net/ice/ice_hash.c | 2 +-
|
||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c
|
||||
index ae6fb38594..cf4d677101 100644
|
||||
--- a/drivers/net/iavf/iavf_hash.c
|
||||
+++ b/drivers/net/iavf/iavf_hash.c
|
||||
@@ -886,8 +886,8 @@ iavf_hash_parse_raw_pattern(const struct rte_flow_item *item,
|
||||
struct iavf_rss_meta *meta)
|
||||
{
|
||||
const struct rte_flow_item_raw *raw_spec, *raw_mask;
|
||||
+ uint16_t spec_len, pkt_len;
|
||||
uint8_t *pkt_buf, *msk_buf;
|
||||
- uint8_t spec_len, pkt_len;
|
||||
uint8_t tmp_val = 0;
|
||||
uint8_t tmp_c = 0;
|
||||
int i, j;
|
||||
diff --git a/drivers/net/ice/ice_fdir_filter.c b/drivers/net/ice/ice_fdir_filter.c
|
||||
index 480b369af8..e8842bc242 100644
|
||||
--- a/drivers/net/ice/ice_fdir_filter.c
|
||||
+++ b/drivers/net/ice/ice_fdir_filter.c
|
||||
@@ -1876,7 +1876,7 @@ ice_fdir_parse_pattern(__rte_unused struct ice_adapter *ad,
|
||||
(uint8_t *)(uintptr_t)raw_mask->pattern;
|
||||
uint8_t *tmp_spec, *tmp_mask;
|
||||
uint16_t tmp_val = 0;
|
||||
- uint8_t pkt_len = 0;
|
||||
+ uint16_t pkt_len = 0;
|
||||
uint8_t tmp = 0;
|
||||
int i, j;
|
||||
|
||||
diff --git a/drivers/net/ice/ice_hash.c b/drivers/net/ice/ice_hash.c
|
||||
index f35727856e..52646e9408 100644
|
||||
--- a/drivers/net/ice/ice_hash.c
|
||||
+++ b/drivers/net/ice/ice_hash.c
|
||||
@@ -653,8 +653,8 @@ ice_hash_parse_raw_pattern(struct ice_adapter *ad,
|
||||
const struct rte_flow_item_raw *raw_spec, *raw_mask;
|
||||
struct ice_parser_profile prof;
|
||||
struct ice_parser_result rslt;
|
||||
+ uint16_t spec_len, pkt_len;
|
||||
uint8_t *pkt_buf, *msk_buf;
|
||||
- uint8_t spec_len, pkt_len;
|
||||
uint8_t tmp_val = 0;
|
||||
uint8_t tmp_c = 0;
|
||||
int i, j;
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,54 +0,0 @@
|
||||
From b184d103bd767e2286cdb2b0639a2470dce205d5 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= <toke@redhat.com>
|
||||
Date: Thu, 18 Jan 2024 13:22:47 +0100
|
||||
Subject: [PATCH] Fix transposed calloc() arguments
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Calls to calloc() are supposed to have the number of elements as the first
|
||||
argument, but we erroneously transposed the arguments in a couple of places. It
|
||||
seems GCC 14 has started to warn about this, which exposed this as build
|
||||
breakage.
|
||||
|
||||
Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
|
||||
---
|
||||
lib/util/params.c | 2 +-
|
||||
lib/util/xpcapng.c | 6 +++---
|
||||
xdp-trafficgen/xdp-trafficgen.c | 4 ++--
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/lib/util/xpcapng.c b/lib/util/xpcapng.c
|
||||
index e453b88..8cfc947 100644
|
||||
--- a/lib/util/xpcapng.c
|
||||
+++ b/lib/util/xpcapng.c
|
||||
@@ -226,7 +226,7 @@ static bool pcapng_write_shb(struct xpcapng_dumper *pd, const char *comment,
|
||||
shb_length += sizeof(uint32_t);
|
||||
|
||||
/* Allocate the SHB and fill it. */
|
||||
- shb = calloc(shb_length, 1);
|
||||
+ shb = calloc(1, shb_length);
|
||||
if (shb == NULL) {
|
||||
errno = ENOMEM;
|
||||
return false;
|
||||
@@ -318,7 +318,7 @@ static bool pcapng_write_idb(struct xpcapng_dumper *pd, const char *name,
|
||||
idb_length += sizeof(uint32_t);
|
||||
|
||||
/* Allocate the IDB and fill it. */
|
||||
- idb = calloc(idb_length, 1);
|
||||
+ idb = calloc(1, idb_length);
|
||||
if (idb == NULL) {
|
||||
errno = ENOMEM;
|
||||
return false;
|
||||
@@ -549,7 +549,7 @@ struct xpcapng_dumper *xpcapng_dump_open(const char *file,
|
||||
goto error_exit;
|
||||
}
|
||||
|
||||
- pd = calloc(sizeof(*pd), 1);
|
||||
+ pd = calloc(1, sizeof(*pd));
|
||||
if (pd == NULL) {
|
||||
errno = ENOMEM;
|
||||
goto error_exit;
|
||||
--
|
||||
2.43.0
|
||||
|
36
configure
vendored
36
configure
vendored
@ -5,7 +5,6 @@ set -o pipefail -o errtrace -o nounset -o errexit
|
||||
# submitting any changes
|
||||
|
||||
# defaults
|
||||
platform=default
|
||||
build_dir=.
|
||||
install_dir=/usr/local
|
||||
build_type=release
|
||||
@ -31,9 +30,6 @@ OPTIONS:
|
||||
--build-type, -t Build type (release, debug, ...)
|
||||
--native-only, -n Only compile for Native CPU (no multiarch)
|
||||
--wipe, -w Wipe whole repo (except startup.* files)
|
||||
--sanitize, -s Enable sanitizer (mem)
|
||||
--platform, -p Specify target platform
|
||||
--option, -o Enable specific VPP options (fib8, fib16)
|
||||
__EOF__
|
||||
}
|
||||
|
||||
@ -79,15 +75,6 @@ while (( "$#" )); do
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
-p|--platform)
|
||||
if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
|
||||
platform=$2
|
||||
shift 2
|
||||
else
|
||||
echo "Error: Argument for $1 is missing" >&2
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
-n|--native-only)
|
||||
native_only=yes
|
||||
shift 1
|
||||
@ -96,28 +83,6 @@ while (( "$#" )); do
|
||||
wipe=yes
|
||||
shift 1
|
||||
;;
|
||||
-s|--sanitize)
|
||||
shift 1
|
||||
case "$1" in
|
||||
mem)
|
||||
shift 1
|
||||
args+=("-DVPP_ENABLE_SANITIZE_ADDR=ON")
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
-o|--option)
|
||||
shift 1
|
||||
case "$1" in
|
||||
fib8)
|
||||
shift 1
|
||||
args+=("-DVPP_IP_FIB_MTRIE_16=OFF")
|
||||
;;
|
||||
fib16)
|
||||
shift 1
|
||||
args+=("-DVPP_IP_FIB_MTRIE_16=ON")
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
-*|--*=) # unsupported flags
|
||||
echo "Error: Unsupported flag $1" >&2
|
||||
exit 1
|
||||
@ -146,7 +111,6 @@ args+=("-DCMAKE_PREFIX_PATH=/opt/vpp/external/${arch}")
|
||||
args+=("-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON")
|
||||
args+=("-DCMAKE_INSTALL_PREFIX=${install_dir}")
|
||||
args+=("-DCMAKE_BUILD_TYPE:STRING=${build_type}")
|
||||
args+=("-DVPP_PLATFORM=${platform}")
|
||||
[ "${native_only}" == "yes" ] && args+=("-DVPP_BUILD_NATIVE_ONLY:BOOL=ON")
|
||||
|
||||
[ "${wipe}" == "yes" ] && git clean -fdx --exclude=startup.\*
|
||||
|
51
docs/README
51
docs/README
@ -1,2 +1,49 @@
|
||||
If you want to build a VPP documentation source, please refer to the VPP user documentation:
|
||||
https://fd.io/docs/vpp/master/contributing/writingdocs.html
|
||||
|
||||
Building VPP Documents
|
||||
|
||||
These instructions show how the VPP documentation sources are built.
|
||||
|
||||
To build your files, you can either Create a Virtual Environment using
|
||||
virtualenv, which installs all the required applications for you.
|
||||
|
||||
Create a Virtual Environment using virtualenv
|
||||
============================
|
||||
|
||||
For more information on how to use the Python virtual environment check
|
||||
out https://packaging.python.org/guides/installing-using-pip-and-virtualenv
|
||||
|
||||
Get the Documents
|
||||
------------------------------
|
||||
|
||||
For example start with a clone of the vpp.
|
||||
|
||||
$ git clone https://gerrit.fd.io/r/vpp
|
||||
$ cd vpp
|
||||
|
||||
Install the virtual environment
|
||||
----------------------------------------------
|
||||
|
||||
$ python -m pip install --user virtualenv
|
||||
$ python -m virtualenv env
|
||||
$ source env/bin/activate
|
||||
$ pip install -r docs/etc/requirements.txt
|
||||
$ cd docs
|
||||
|
||||
Which installs all the required applications into it's own, isolated,
|
||||
virtual environment, so as to not interfere with other builds that may
|
||||
use different versions of software.
|
||||
|
||||
Build the html files
|
||||
----------------------------
|
||||
|
||||
Be sure you are in your vpp/docs directory, since that is where Sphinx will
|
||||
look for your conf.py file, and build the documents into an index.html file
|
||||
|
||||
$ make html
|
||||
|
||||
View the results
|
||||
------------------------
|
||||
|
||||
If there are no errors during the build process, you should now have an
|
||||
index.html file in your vpp/docs/_build/html directory, which you can
|
||||
then view in your browser.
|
||||
|
@ -251,6 +251,7 @@ class Siphon(object):
|
||||
output."""
|
||||
|
||||
def process(self, out=None):
|
||||
|
||||
if out is None:
|
||||
out = sys.stdout
|
||||
|
||||
|
@ -19,6 +19,7 @@ import os
|
||||
|
||||
|
||||
class SiphonCLICMD(process.Siphon):
|
||||
|
||||
name = "clicmd"
|
||||
identifier = "VLIB_CLI_COMMAND"
|
||||
|
||||
|
@ -18,6 +18,7 @@ from . import process, parsers
|
||||
|
||||
|
||||
class SiphonSYSCFG(process.Siphon):
|
||||
|
||||
name = "syscfg"
|
||||
identifier = "VLIB_CONFIG_FUNCTION"
|
||||
|
||||
|
@ -6,9 +6,7 @@ Release notes
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
v24.02
|
||||
v23.10
|
||||
v23.06
|
||||
v23.02
|
||||
v22.10.1
|
||||
v22.10
|
||||
v22.06
|
||||
v22.02
|
||||
past
|
||||
|
@ -6,10 +6,6 @@ Past releases
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
v22.10
|
||||
v22.06.1
|
||||
v22.06
|
||||
v22.02
|
||||
v21.10.1
|
||||
v21.10
|
||||
v21.06
|
||||
@ -43,3 +39,4 @@ Past releases
|
||||
v17.01
|
||||
v16.09
|
||||
v16.06
|
||||
|
||||
|
@ -1,12 +0,0 @@
|
||||
Release notes for VPP 22.06.1
|
||||
=============================
|
||||
|
||||
This is bug fix release.
|
||||
|
||||
Of particular importance, this release contains the fix for
|
||||
`JIRA VPP-2307: CVE-2022-46397 FD.io VPP (Vector Packet Processor) IPSec generates a predictable IV in AES-CBC mode <https://jira.fd.io/browse/VPP-2037>`__
|
||||
|
||||
For the full list of fixed issues please refer to:
|
||||
|
||||
- fd.io `JIRA <https://jira.fd.io>`__
|
||||
- git `commit log <https://git.fd.io/vpp/log/?h=stable/2206>`__
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user