summaryrefslogtreecommitdiffstats
path: root/build
AgeCommit message (Collapse)AuthorFilesLines
2020-08-18dpdk: fix compiling issue with clangLijian.Zhang1-1/+2
When building vpp image with below command, clang reports warnings/errors on the unused option '-L', as it's not linking stage, and does not require linking libraries. In dpdk.mk, the linking library path should be attached to DPDK_EXTRA_LDFLAGS, instead of DPDK_EXTRA_CFLAGS $ make build-release CC=clang V=1 clang -Wp,-MD,./.ark_ddm.o.d.tmp -fPIE -fPIC -pthread -I/root/origin/build-root/build-vpp-native/external/dpdk-20.02/lib/librte_eal/linux/eal/include -march=armv8-a+crc -DRTE_MACHINE_CPUFLAG_NEON -DRTE_MACHINE_CPUFLAG_CRC32 -I/root/origin/build-root/build-vpp-native/external/dpdk-20.02/arm64-armv8a-linuxapp-clang/include -DRTE_USE_FUNCTION_VERSIONING -include /root/origin/build-root/build-vpp-native/external/dpdk-20.02/arm64-armv8a-linuxapp-clang/include/rte_config.h -D_GNU_SOURCE -O3 -I./ -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wold-style-definition -Wpointer-arith -Wnested-externs -Wcast-qual -Wformat-nonliteral -Wformat-security -Wundef -Wwrite-strings -Wdeprecated -Wno-missing-field-initializers -Wno-address-of-packed-member -Werror -g -mtune=generic -L/root/origin/build-root/install-vpp-native/external/lib -I/root/origin/build-root/install-vpp-native/external/include -o ark_ddm.o -c /root/origin/build-root/build-vpp-native/external/dpdk-20.02/drivers/net/ark/ark_ddm.c == Build drivers/vdpa/ifc clang: warning: argument unused during compilation: '-L/root/origin/build-root/install-vpp-native/external/lib' [-Wunused-command-line-argument] clang: error: argument unused during compilation: '-L/root/origin/build-root/install-vpp-native/external/lib' [-Werror,-Wunused-command-line-argument] Type: fix Change-Id: If8fd9b19d0aff9d3c27d77e78cd3064bb1ad6565 Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com> Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com> Reviewed-by: Govindarajan Mohandoss <Govindarajan.Mohandoss@arm.com> (cherry picked from commit 88d6ce2bee53b7c9f876aa78c5db8ab1ea75c08a)
2020-08-13dpdk: false link down issue with ixgbe NICLijian.Zhang1-0/+66
This issue is observed with X520-2 NICs on FD.io lab Taishan server. After VPP booting up and bringing up the interfaces with command "set interface state <interface> up", it still shows link down status from the command "show hardware-interfaces". However, the hardware link status is actually up. dpdk_process() cannot get the hardware link status correctly via rte_eth_link_get_nowait(). In ixgbe_dev_link_update_share(), if the media type is fiber and the link is down, a flag (IXGBE_FLAG_NEED_LINK_CONFIG) is set. A callback to ixgbe_dev_setup_link_alarm_handler() is scheduled trying to set up the link and clear the flag afterwards. If the device is started or stopped before the flag is cleared, the scheduled callback is canceled. This causes the flag to remain set and subsequent calls to ixgbe_dev_link_update_share() return without trying to retrieve the link state because the flag is set. When the callback is canceled by either interface start or stop operation, in ixgbe_dev_cancel_link_thread(), after cancelling the callback/thread, unset the flag on the device to avoid this condition. Type: fix Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com> Reviewed-by: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com> Reviewed-by: Jieqiang Wang <Jieqiang.Wang@arm.com> Change-Id: I04de377dc048307a78a5b7109ebdfaf376d5e029 (cherry picked from commit 1690dcb49527934e83748e7b6db8501b33c3758a)
2020-08-12dpdk: patch ixgbe driver to solve race conditionMatthew Smith1-0/+49
Type: fix Some fiber ports that are managed by the ixgbe PMD have the possibility to get into a state where link can never be brought up. This patch should fix it and will be submitted to upstream DPDK. Change-Id: Ia4d0df2e70d098b2151e513b96e8bd742151e8ce Signed-off-by: Matthew Smith <mgsmith@netgate.com> (cherry picked from commit 0860b2e19365c092f10dd1ce639caaded0e87ded)
2020-08-07quic: fix quicly rtt time skewDave Wallace1-0/+15
- This patch to quicly fixes an intermittent failure in the rtt calculation when there is a time skew Type: fix Change-Id: If89c47401ee75c88f0eb65ae888b6914695b2aec Signed-off-by: Dave Wallace <dwallacelf@gmail.com> (cherry picked from commit caa52f3f93fba4685aa91124646683529de38725)
2020-07-01build: backporting a dpdk i40e TSO pkt exceeds buffer size patchSteven Luong1-0/+99
The subject patch appears to be critical. Backport it to DPDK_19.05 Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: Ic25cb8c5798c3218f739c9dd5ce4d70da5782457
2019-10-11build: build-root/Makefile rm of install treeBurt Silverman1-0/+1
Type: fix The scenario is touch of a dpdk source file in places like <TOP>/build-root/build-vpp-native/external/dpdk-19.08/. The subsequent build will trigger an rm -rf $(PACKAGE_INSTALL_DIR) by build-root/Makefile at around line 709. Because the package in question, "external", consists of various "sub" packages, all of which are controlled with files like .quicly.install.ok located in build-root/build-vpp[_debug]-native/external, we end up not handling the .*.install.ok files to reflect the removal of that PACKAGE_INSTALL_DIR. This fix will correct that, at least for the case of touching/changing dpdk files. A better long term solution would be to change the "sub" packages to be full fledged build system packages, as Dave Barach points out. Signed-off-by: Burt Silverman <burtms@gmail.com> Change-Id: Ia94ccaa2795cbf354b5921c3001a7141313b66be (cherry picked from commit 839a7bce3872f992f4807ee6d6a76f9b361151dc)
2019-08-07rdma: add missing symbolsBenoît Ganne1-1/+4
rdma-core-25.0 move some symbol to another library, make sure we link to it. Type: fix Fixes: ec757593859bd8c16839ea8a81a2ef4eb8b29539 Change-Id: I6b8a56ea5fc7787d3de0982015ed47b767557c06 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-08-05rdma: bump rdma-core to 25.0Benoît Ganne1-2/+3
Type: make Change-Id: Ie7596e2976917657b089162c44b3b669e3a2d048 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-07-22quic: move patch for quicly 0.0.3Aloys Augustin1-0/+0
Change-Id: I58e58f1f297820b110013f4bf6ede827ced94a3d Type: fix Fixes: 5ff9765 Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
2019-07-22quic: update quicly libraryAloys Augustin3-14/+2
Update quicly to latest version that includes our upstreamed patch. Change-Id: I0b26c72e49bce81daf4fb069b5818defd6cf25b9 Type: feature Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
2019-07-15quic: integrate vpp crypto api for quic packets encryptionMathias Raoul1-0/+33
Type: feature Change-Id: I740f15a5ef959d31e94e59d652aa9f691db1f289 Signed-off-by: Mathias Raoul <mathias.raoul@gmail.com>
2019-07-09quic: fix passive disconnect handling & refactorNathan Skrzypczak1-0/+12
Type: refactor Change-Id: Ie54a77252e9f58a90f9e1f9595b9ede354952f70 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-07-01build: vpp-ext-deps .rpm may not be installedDave Barach1-1/+1
It's fine to remove the old .rpm, but don't stop the parade if there wasn't an old .rpm to remove. Type: fix Change-Id: I500c740cc4ded16d3345c1e98462a1e8533f1028 Signed-off-by: Dave Barach <dave@barachs.net>
2019-05-30dpdk: remove bonding codeDamjan Marion1-1/+1
We have native implementation and we should not maintain both.... Change-Id: Ic09ebffda52cdc733b3cfeff06690e0d3cc08084 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-05-30dpdk: bump to 19.05Damjan Marion2-1/+4
Change-Id: I738ff20a1ebb1cc70fb6ddb40791b6747cada372 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-05-14QUIC multi thread updateAloys Augustin2-2/+2
* Add support for multiple threads * Replace quicly buffers with fifos * Fix cleanup of sessions * Update quicly release version Change-Id: I551f936bbec05a15703f043ee85c8e1ba0ab9723 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-05-14Build packages for generic Arm architectureLijian.Zhang1-1/+8
The current aarch64 version of VPP package distro in cloud repository (https://packagecloud.io/fdio/master/ubuntu), is built on a ThunderX server, using some arch-specific options, for example, 128Byte cache line size, T=arm64-thunderx-linuxapp-gcc, RTE_MACHINE=thunderx The patch is trying to build package distro with aarch64 generic features, for both binary type targets, e.g., build/build-release, and package type targets, e.g., pkg-deb/pkg-rpm, with the generic options, e.g., 128Byte cache line size, T=arm64-armv8a-linuxapp-gcc, RTE_MACHINE=armv8a If end users want to build arch specific optimized image, TARGET_PLATFORM variable could be used, as below example, $ make build-release/pkg-deb TARGET_PLATFORM=thunderx Change-Id: If78bca8709fe83db6a95e8c26346f206bf5ea71d Signed-off-by: Lijian Zhang <Lijian.Zhang@arm.com> Reviewed-by: Sirshak Das <Sirshak.Das@arm.com> Reviewed-by: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
2019-04-23Bump to intel-ipsec-mb version 0.52Damjan Marion1-10/+10
Change-Id: Ifeaf93c98e4af92da9409fa5a2114b577e8c0937 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-17crypto-ipsecmb: enable GCMNeale Ranns1-1/+2
Change-Id: I670d7899bcc63a419daf481167dc445a6386cce8 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-10cmake: fix errors in external when building past point-releaseAndrew Yourtchenko1-1/+1
Change-Id: I23b4816e4ef2c6a2fa825fbd063ea25ff2024151 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-04-09rdma-core: add debug build optionBenoît Ganne1-1/+8
Add option RDMA_CORE_DEBUG=[yn] build option. rdma-core package is built in Release (-O2) mode by default, but Debug (-O0 -g) mode can be selected by eg. make install-ext-deps RDMA_CORE_DEBUG=y Change-Id: Id4db5ef1e7b13c44d478755a0bfbdbe56cfc13df Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-04-08rdma: fix DPDK MLX driver conflictBenoît Ganne2-3/+2
VPP rdma driver relies on an internal rdma-core not compatible with DPDK MLX driver. Force the use of external rdma-core through RTE_IBVERBS_LINK_DLOPEN DPDK build option and make sure internal rdma-core symbols are not leaked outside of the rdma plugin. Change-Id: I5b2281259f517c4e109d388d172b72eadd69986f Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-04-05rdma: more batching, compile rdma-core in release modeBenoît Ganne1-1/+1
rx: add batching for WC processing and release tx: improve batching for WC submission and processing rdma-core: compile in release mode to remove assert() Change-Id: I5fb8736db36b50f8b758cd688100477b67e72d80 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-04-05QUIC: Build cleanupDave Wallace1-6/+0
- Remove redundant CMAKE variable definition. Change-Id: I04992ec921cb5f175741c1bdd13613cfc291aeab Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-04-03Fix problem building rdma-core.Thomas F Herbert2-2/+8
Recent patches add rdma-core. They are not building in Centos because of differences in cmake. This patch fixes that problem by defining CMAKE for all external builds. Change-Id: I3eea869226385207500c5a1217bd7330140ca462 Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2019-04-03QUIC: Build system updateAloys Augustin3-1/+109
Download a single tarball with the sources of quicly and its dependencies from github instead of cloning submodules. Change-Id: Id9955565d46f595b3a14ba3408c24045d4acd296 Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
2019-04-02dpdk 19.02: fixed speed capability error issueChenmin Sun1-0/+101
Device speed capability should be specified based on different phy types instead of a fixed value, this patch fix the issue. Change-Id: Ia76231aefbcb0fe8370867b6e86a0d3bb9e169a0 Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
2019-03-29revert quicly related build/external changesDamjan Marion4-134/+4
We dont't want git pull there, there is simple way to grab tarball from github for every single commit Change-Id: I7a98cab7660750e48084279d8b9892cdf229bceb Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-03-29Integrate first QUIC protocol implementationNathan Skrzypczak4-4/+134
Currently supports on single stream exposed through standard internal APIs Based on libquicly & picotls by h2o Change-Id: I7bc1ec0e399d1fb02bfd1da91aa7410076d08d14 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-03-28Add RDMA ibverb driver pluginBenoît Ganne5-51/+94
RDMA ibverb is a userspace API to efficiently rx/tx packets. This is an initial, unoptimized driver targeting Mellanox cards. Next steps should include batching, multiqueue and additional cards. Change-Id: I0309c7a543f75f2f9317eaf63ca502ac7a093ef9 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-03-22dpdk: add ENIC PMD patch to untag default vlanHyong Youb Kim1-0/+31
The ingress vlan rewrite mode affects the vlan header of ingress packet. The enic driver currently uses the 'passthrough' mode, which leaves the vlan header intact. As all packets in UCS network are tagged, this default mode leads to tagged ingress packets in the following cases where VPP expects untagged packets. 1. Trunk-mode vNIC on UCS standalone server. A remote device sends an untagged packet to the server. This packet is ultimately tagged with vlan 0 as it reaches the driver, and VPP sees an ingress packet tagged with vlan 0. 2. Access-mode vNIC on UCS blade or standalone server. A remote device sends a packet on the vNIC's default vlan (e.g. 200) to the server. This tag is untouched, and VPP sees an ingress packet tagged with the default vlan (e.g. 200). In both cases, VPP expects to see untagged packets. To work around the issue, VPP currently enables vlan stripping on VIC interfaces, which breaks vlan sub-interface features. To avoid the current workaround, use the "untag default vlan" rewrite mode. With this mode, the VIC adapter removes the vlan header if it matches the default vlan. In the cases described above, VPP would see untagged packets. Packets tagged with non-default vlan (e.g. non-0 for case 1 and non-200 for case 2) are received with their tags intact, so VPP sees tagged packets as expected. The driver currently has no programmatic way to change the rewrite mode after rte_eal_init. So use this patch to change the mode for the time being. Change-Id: Iff6408275363ed52d6016e7516d745214d6b30d4 Signed-off-by: Hyong Youb Kim <hyonkim@cisco.com>
2019-03-01dpdk: update mlx[45] linking optionsMatthew Smith1-3/+2
Upstream DPDK changed the names of the options to use dlopen() with libibverbs and libmlx[45] from RTE_LIBRTE_MLX[45]_DLOPEN_DEPS to RTE_IBVERBS_LINK_DLOPEN (handles both mlx4 and mlx5). VPP's build option to enable this configuration when building DPDK no longer worked starting when VPP moved to DPDK 19.02. Update VPP's build options to enable the correct option name. Change-Id: I8e34e1d3fc4ee8aac4fd6f2a7d27177f2b0dea50 Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2019-02-14make install-ext-deps broken.Paul Vinciguerra1-1/+1
make install-ext-deps broken due to nasm site being offline for days. curl: (7) Failed to connect to www.nasm.us port 443: Connection refused curl: (7) Failed to connect to www.nasm.us port 80: Connection refused Pointing url to mirror at Oregon State University for the time being. https://ftp.osuosl.org/pub/blfs/conglomeration/nasm/$(nasm_tarball) Change-Id: I6310337ae6946fbcd5fd653dcd3780ec7e97fe9a Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2019-02-02dpdk: bump to dpdk 19.02Damjan Marion10-1233/+2
HQoS requires fixes to work with dpdk 19.02 so code is disabled and pending deprecation unless active maintainer is found. Change-Id: I3569c4287b6dfdd2c29e02375eb53bf01fa6ae84 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-12-12dpdk: net/bonding: fix buffer corruption in packetsIgor Mikhailov (imichail)1-0/+203
This fix is needed for setup with bonded interfaces. In some scenarios vpp might crash, this change fixes the issue. Change-Id: I0dc66e32b6c89dc3f8d552401833d6785a12c978 Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2018-11-29dpdk: bump to DPDK 18.11Damjan Marion1-2/+2
Change-Id: Ib6458e56f546bb5b11c23aa5e1afe0f4b5011c08 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-11-05dpdk: enable gso when the tap PMD is enabledMatthew Smith1-1/+1
Setting DPDK_PMD_TAP=y when building will enable the tap PMD in the build configuration that is generated for DPDK. Enabling this currently results in a failure during compilation because rte_gso.h is not found. RTE_LIBRTE_GSO needs to be set to y for this to work. Use the setting for the tap PMD to determine the value for RTE_LIBRTE_GSO. Change-Id: Ie395417b1c62369a95320856081ad52c674ce9f2 Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2018-10-26dpdk: fix mlx5 build on SUSEStephen Hemminger1-0/+39
Current mlx5 requires libmnl, and SUSE has a bug which installs the header file in incorrect location. Workaround (from upstream) is to use pkg-config. Change-Id: Iadfd2dc0df211876258c31da028af2e8934483b3 Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-10-26dpdk: ENA PMD patch for failure on port restartMatthew Smith1-0/+359
Patch to fix a bug in the ENA PMD on starting a port that had previously been started and stopped. There was a failure to allocate descriptors on start because they had been allocated during the initial start and not released when the port was stopped. Issue reported/tracked at https://github.com/amzn/amzn-drivers/issues/86 Change-Id: Id9c8d598929f0561788b985011fe5dea8f4a21a5 Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2018-10-25Address "is already installed" Jenkins issueMarco Varlese1-1/+1
Change-Id: Iad2ddf63116a6f477c6106a3e045fe36f34bc062 Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2018-10-24dpdk: disable unused rxtx callbacks in ethdevStephen Hemminger1-0/+1
Save a few cycles on every rx and tx burst call by not compiling in support for DPDK Rx and Tx callbacks. This feature is optional and unused by current VPP code. Change-Id: I1916bc8822e2bd405c1ac3909e85467a01023862 Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-10-20dpdk: turn off unused DPDK componentsStephen Hemminger1-0/+17
DPDK has added a lot more drivers and config options that are not used by current VPP code. Change-Id: I385f8b5df02b95a31ca9abe506c79cf52e99a24c Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-10-15dpdk: drop no longer used config optionsStephen Hemminger1-6/+0
DPDK has switched to dynamic logging for initialization (since 18.05). Don't generate config for unused options. Change-Id: I3f1a5b3b8bee38abc9d0654737b59368646ed0fa Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2018-10-11Fix vpp-ext-deps package version in stable branchDamjan Marion1-1/+1
Change-Id: Ifb33622b50113501f1d23ab94ba9da708678d6be Signed-off-by: Damjan Marion <damarion@cisco.com> (cherry picked from commit 5551e41f78249b72715203ecd93586f48acccbf4)
2018-10-01dpdk: updated makefile to enable QAT cryptodevRadu Nicolau1-0/+1
Change-Id: I2d70f2f29f3af10b6e43dde235fdf90a4596eb35 Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
2018-09-27dpdk_plugin: fix mlx5 build and runtime issuesSirshak Das1-1/+2
There are issues with VPP finding and linking the mlx5 shared glue library which was built by default if mlx5 was enabled. Runtime Errors this patch fixes: net_mlx5: cannot load glue library: librte_pmd_mlx5_glue.so.18.05.0: cannot open shared object file: No such file or directory net_mlx5: cannot initialize PMD due to missing run-time dependency on rdma-core libraries (libibverbs, libmlx5) This patch introduces additional config parameter to disable glue library building and instead statically link ibverbs and mlx5 libraries to the PMD and dpdk_plugin. Change-Id: I0b2f67652a57854c778e991780903fb15706ace8 Signed-off-by: Sirshak Das <sirshak.das@arm.com> Reviewed-by: Lijian Zhang <Lijian.Zhang@arm.com>
2018-09-27fix typo in vpp-ext-deps rpm packagingDamjan Marion1-1/+1
Change-Id: Ia23a876cefbfd32d6f543a77dfec57a4aa5676ae Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-25dpdk: add patch to fix 25G AOC cable detectionDamjan Marion1-0/+30
Change-Id: I6b54d4c7767a20b875b5bc05f23a7ac15cb9fbcc Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-21add: nasm and ipsec-mb into vpp-ext-deps packagingDamjan Marion16-397/+547
Change-Id: Ie5d85af84ae0d8b15edf5962213ed1b1953bee2f Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-20rename vpp-dpdk-dev to vpp-ext-depsDamjan Marion14-0/+1233
We need to have new tenants in the development package. This is first of series of patches which will allow us to have multiple external libs and tools packaged for developer's convenience. Change-Id: I884bd75fba96005bbf8cea92774682b2228e0e22 Signed-off-by: Damjan Marion <damarion@cisco.com>