summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2021-04-27misc: add StatementMacros to .clang-formatDamjan Marion1-9/+12
Type: make Change-Id: I79d8d0aa8b8349df0b3c1f338861350e8df31ca6 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-27vppinfra: silence coverity warnings related to clib_memcpy_u32()Damjan Marion1-0/+10
Type: fix Change-Id: I17e7b3fca390c0b0150c4606f7c93771ee9bdbdc Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-27vppinfra: Fix a bug related to path_searchRyo Nishikawa1-1/+1
Type: fix Signed-off-by: Ryo Nishikawa <nishikawa0320@gmail.com> Change-Id: Iabf7e088245395ea3fff62a22266a31de3fc305e
2021-04-27vrrp: increase stack size of process nodeMatthew Smith1-2/+2
Type: fix The process node which wakes up when a timer expires and transitions a backup node to master state may call a function to add a MAC address to an interface. This works fine for some devices, but with DPDK 20.11 on i40e interfaces, the i40e PMD functions which enact the change cause the stack to be exhausted. Increase the stack size for the node. Change-Id: I824603e162f4f6d680486706210986572f0d9845 Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2021-04-27misc: auto-generate go bindingsVladimir Lavor1-0/+183
Type: feature Added target 'make go-api-files' creating compatible go bindings using JSON API definition and GoVPP binary API generator. Signed-off-by: Vladimir Lavor <vlavor@cisco.com> Change-Id: I5bae113b85eaf5ebda8e292d34c9826075ef19b5
2021-04-27perfmon: top down level 1 supportmdr789-25/+248
Adding perfmon node TMAM support on ICX. Type: improvement Signed-off-by: Ray Kinsella <mdr@ashroe.eu> Change-Id: I48a9a9ff6a72efc28eaf0cb11ef39fb62cebb126
2021-04-27hsa: use only one conn type for vcl testsFlorin Coras3-139/+80
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I31d0f8e32f7bb508c6f57913d5a829ceaad91f7d
2021-04-26hsa: use tcp for vcl test control channelFlorin Coras3-195/+242
Also, only exchange config over control session. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I001df635896762bc5330cebb7d5744e3e754482d
2021-04-26vppinfra: clib_memcpy_u32() utilizing SIMD mask loads/storesDamjan Marion4-37/+159
Type: improvement Change-Id: I55c4688bd1feffae139ce12a66d15885373e5cd7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-26pg: fix packet coalescing cliRay Kinsella1-2/+2
Small fix to the packet coalescing cli. Type: fix Signed-off-by: Ray Kinsella <mdr@ashroe.eu> Change-Id: I1edbf6e43937aa0345185f06437095e0558dba31
2021-04-26vppapigen: remove flag day codePaul Vinciguerra1-296/+0
The flag day for the crc algorithm change has long passed and should not be carried into the next release. Type: refactor Change-Id: I1b1027139a778907926e48a8a553b908a79db08f Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2021-04-26tests: clean up gbp calls from vpp_papi_providerPaul Vinciguerra3-134/+200
Move info from vpp_papi_provider to .api/vpp_objects Change-Id: Iaf46483fda2840dfec8d37e0b9262e1c9912be59 Type: test Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2021-04-26session: fix race condition in fifo allocationliuyacan4-44/+40
Under some timing conditions,VCL may receive CONNECTED/ACCEPTED event before ADD_SEGMENT event. Timing example: 2 threads call segment_manager_alloc_session_fifos() parallelly Thread 1 Thread 2 sm read lock | | | try to alloc fifo =>failed | | | sm read unlock | | | sm write lock | | | add segment | | | sm write unlock | | sm read lock | | | try to alloc fifo=>successful sm read lock | | sm read unlock | | | emit CONNECTED/ACCEPTED emit ADD_SEGMENT event | sm read unlock This commit move ADD_SEGMENT notification under the protection of the write lock in some scenarios. Type: fix Signed-off-by: liuyacan <liuyacan@corp.netease.com> Change-Id: I25d5475c5e6d37cfccefa9506f6030c26ce8ee9b
2021-04-25vppinfra: add COMPILE_TIME_CONST() macroDamjan Marion2-1/+2
Type: improvement Change-Id: I10d7489f57bc60eb92049962b4e6ea84974f17b8 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-25vppinfra: AVX512 mask load/stores and compress storeDamjan Marion3-37/+55
Type: improvement Change-Id: Id6be598aade072653e408cca465e62931d060233 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-25vppinfra: add clear_lowest_set_bit() function, use BMI2 if availableDamjan Marion1-0/+10
Type: improvement Change-Id: I973cacd0cade0ca98e6261c1fb026a5eb38b44d3 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-23nat: correct detection of icmp bypass presenceKlement Sekera1-2/+2
Type: fix Signed-off-by: Klement Sekera <ksekera@cisco.com> Change-Id: Iead167e7497e0779c440f7fb243014a06ae2b452
2021-04-23vxlan: Fix L3 modeNathan Skrzypczak5-103/+158
Type: fix Partially revert fix SEGV reported in VPP-1962 [commit a4b0541f64eef02fa0d003d8f831cfdeb45d3668] This adds an is_l3 option to choose between L2 & L3 mode add tunnel creation time Change-Id: Ia2c91a1099074b7d23fc031b78ed0f68628eeabe Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-04-23session: set connected session index for ctFlorin Coras1-2/+5
Set connected session index for ct as well. Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Id82ffcf5572b6a9d2769c0e685c7a0b4d1ea9e9f
2021-04-23dpdk: support md5 async handler in dpdk cryptodevAlexander Chernavin1-0/+3
With this change, enable MD5 with AES-CBC support in dpdk cryptodev. Type: improvement Signed-off-by: Alexander Chernavin <achernavin@netgate.com> Change-Id: Ic587aaa1fa0dc102e36eb34f329ef21a16156f26
2021-04-23tcp: try to update sack list only if not emptyFlorin Coras1-1/+1
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ieb5af96de5be33356dbab7bc4ab4696731fa8866
2021-04-23tcp: reorganize connection membersFlorin Coras2-8/+8
Optimize connection size and move timestamp_delta closer to other timestamp related members. Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Iec42efb46482ebfdf234518a4e91af836e4f4c07
2021-04-23tls quic: improve error reportingFlorin Coras3-13/+17
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I92f0c1f7c0f4696fa12071440a643aa703d6306f
2021-04-23session: set fifo's session index before vcl attachliuyacan1-0/+2
Current implementation may have timing issue: 1. The TCP 3-way-handshake is completed but the app is busy and does not process the CONNECTED event. 2. VPP receive some data from peer and try to send a RX event to VCL, but the fifo's client session index is not initialized yet. So this event will be sent to incorrect session 0. Type: fix Change-Id: I54f222232968bfaea5f4745284a1cfacc89482a9 Signed-off-by: liuyacan <liuyacan@corp.netease.com>
2021-04-22session: remove unused connect/listen msg membersFlorin Coras1-5/+0
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ie46824f95f9488b04fa1f701ff94345e2dc83de2
2021-04-22vcl session: refactor passing of crypto contextFlorin Coras18-86/+278
Pass tls/quic crypto context using extended config instead of bloating conect/listen messages. Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I0bc637ae310e6c31ef1e16847501dcb81453ee94
2021-04-22flow: Add API implementation of IP4/IP6, IP4_VXLAN/IP6_VXLANChenmin Sun3-1/+63
This patch adds the API handler implementation of the below flows: FLOW_TYPE_IP4, FLOW_TYPE_IP6, FLOW_TYPE_IP4_VXLAN, FLOW_TYPE_IP6_VXLAN Type: feature Signed-off-by: Chenmin Sun <chenmin.sun@intel.com> Change-Id: I62e1c466b46f940180e957c859d122086aa22f1c
2021-04-22tls: tlspicotls require version when buildingNathan Skrzypczak1-3/+19
Type: fix When building the tlspicotls plugin, we rely on vpp-ext-deps having installed quicly & picotls. We add a dependancy on the version installed thus ensuring that people with older vpp-ext-deps version installed don't have their build fail. This has the drawback that picotls doesn't have its own versionning scheme Change-Id: I9e2ccfc00b3c37af2bc2483a791eb05f994dd4a4 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-04-22vcl session: extended connect/listen configurationFlorin Coras7-18/+123
Type: feature Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ic8d9386fef37ffd3446aaeb93a96ee6d60633831
2021-04-22misc: add filter for specific error for pcap traceBenoît Ganne6-1/+53
Type: feature Change-Id: I325257454df1cc22833fa6a1dedd4739d4d5a558 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-04-22ip: remove unnecesary inlining in ip4-rewrite nodeDamjan Marion1-16/+3
Type: refactor Change-Id: Ifbaf42ef88a7e0f1715b7b5e342af790e3b6acd9 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-22quic: update quicly to v0.1.3Mathias Raoul3-7/+20
This bumps quicly version to v0.1.3 ( sha d44c089364067dbcdfbad7fb2c821900fb4aef5e in https://github.com/h2o/quicly ) Also simplifies the build to only make needed dependancies, and silence compiletime warnings Type: feature Change-Id: Ie00ec7e408d234464871b68ddc79bb33dc4179ed Signed-off-by: Mathias Raoul <mathias.raoul@gmail.com> Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-04-21buffers: vlib_get_buffers() with 512-bit SIMDDamjan Marion2-5/+47
Type: improvement Change-Id: Id8ce3ffc1299a38171b82a7082454412c840a40c Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-21vlib: don't inline vlib_buffer_enqueue_to_*Damjan Marion4-236/+316
Function call in this case is not bad thing, as those functions are called once per frame. Type: improvement Change-Id: I7bd61cf746b905e2c8e3085ebb2ff001c0a52da8 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-21vppinfra: more avx512 inlines (compress, expand, from, is_equal_mask)Damjan Marion3-31/+81
Type: improvement Change-Id: I4cb86cafba92ae70cea160b9bf45f28a916ab6db Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-21cnat: Fix session flag initializationNathan Skrzypczak4-1/+8
Type: fix Sometimes session->value.flags wasn't initialized leading to next_node index corruption. Also added a debug flag to tell session/rsessions appart Change-Id: I80da50f2267e03a4552e8c9efc8e3aa08bc5569d Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-04-21nat: fix multi worker scenariosKlement Sekera3-48/+161
Properly select worker from hash table in out2in direction, increase number of worker threads in MW test to 4 to test these cases. Type: fix Change-Id: I76eda5761ff497b85b031dd913a64b7fcb53b33a Signed-off-by: Klement Sekera <ksekera@cisco.com>
2021-04-20svm: allow external chunk alloc on segmentFlorin Coras2-0/+32
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I89f9caa8dd44dc640615a58fe7708f388fdd84e9
2021-04-20pmalloc: tolerate move_pages failure on numa node #0Klement Sekera1-1/+2
Type: fix Change-Id: I65dbc4f3db47c745a0187e015845e07b3b0568e5 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2021-04-20nat: fixing cli bug for nat44-ei and nat44-edFilip Varga2-2/+2
Removing obsolete optional parameters. Type: fix Change-Id: I135eb4767979ab81636da16e91752a2ad80e0a45 Signed-off-by: Filip Varga <fivarga@cisco.com>
2021-04-20tls: honor tcp deq notification requestFlorin Coras1-0/+6
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ic24516a7242ef4193c5d751a2d5424918c390759
2021-04-20tcp: req app deq notification on fifo fullFlorin Coras3-1/+33
If fifo full, default to requesting an app deq notification and forcing an ack (window update) if zero rcv window sent is still active. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Iade7e1722503da149c62c465c472edbb0a5599f7
2021-04-20crypto: support async handlers for 3des and md5Alexander Chernavin2-3/+12
With this change, add support for 3DES and MD5 in IPsec async mode. After changes in foreach_crypto_link_async_alg, the last combination in the list (aes-256-cbc-hmac-sha-512) started to fail during decription. That was also fixed by proper vector size validation. Type: improvement Signed-off-by: Alexander Chernavin <achernavin@netgate.com> Change-Id: I660657bdab62ea9cf031c3e43d99f2317e5f74d7
2021-04-20nat: nat44-ed i2o & o2i trace fixFilip Varga2-8/+10
If cache used than we don't print in trace session index. Type: fix Change-Id: Ib965cd8632b5217f8b2dd8b6cc6af3286c747582 Signed-off-by: Filip Varga <fivarga@cisco.com>
2021-04-20ipsec: remove WITH_LIBSSL macrosDamjan Marion2-125/+3
We don't use libssl anymore... At least not directly. Type: improvement Change-Id: I9a0fab6e3c576d945498ce46f030bd26c1a14d15 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-20dpdk: fix mlx4 mlx5 detection in plugin buildMohammed Hawari1-1/+1
Since the move to DPDK 21.02, compatibility build symbols were depreca- ted, breaking the static linkage of the DPDK plugin to libibverbs. Change-Id: I2fec0807e4c0eb00268618f1495af862eede9081 Type: fix Fixes: 5f35a185d5afee2c364fe84f33922bac1a808113 Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
2021-04-20vlib: remove unused codeDamjan Marion2-38/+0
Type: refactor Change-Id: I01dba12a7f8aa2fa6d2e4113c91dc97e638aca77 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-19vppinfra: momve clib_sysfs_list_to_bitmap to sysfs.cDamjan Marion3-27/+29
Type: refactor Change-Id: Ia5a7ebd5c8492326f5bf2f1264f1c5ef38ccb4dc Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-19ip: fix offload flags handlingAloys Augustin2-3/+5
The per-protocol offload flags only make sense if F_OFFLOAD is set on the vlib buffer main flags. vnet_calc_checksums_inline is called from many places which should do this check and don't, moving the check to this function is less error prone and shouldn't have an impact on performance since the function is always_inline. Type: fix Change-Id: I0297f109f31e409f07bfbaea3cd8b90c659658c4 Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
2021-04-19interface: interface-output end node reworkDamjan Marion9-75/+87
- rename node to more meaningful name - introduce lookup tables - enable multiarch - quad-loop node - enqqueue to next instead of enqueueing to node Type: improvement Change-Id: Ibb208047ae04bb6cfe56db558d3b8938bc14b4fe Signed-off-by: Damjan Marion <damarion@cisco.com>