summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2019-12-17build: export vapi generation in vpp-devOliver Giles6-59/+96
Adds the higher-level vapi generation to cmake/api.cmake and exposes the necessary python scripts in vpp-dev, so that out-of-tree/downstream plugins can also leverage the more convenient API. Type: feature Signed-off-by: Oliver Giles <oliver_g@radwin.com> Change-Id: I8c40a14d27ba3cb972c6907632e03c0e7b0ce982
2019-12-17build: Allow to override build date with SOURCE_DATE_EPOCHBernhard M. Wiedemann1-3/+8
and make host and user overridable in order to make builds reproducible. See https://reproducible-builds.org/ for why this is good and https://reproducible-builds.org/specs/source-date-epoch/ for the definition of this variable. Also switch to UTC to be independent of timezone. Also use ISO 8601 date format to be easier to parse. This is similar to c9f40227836b827b71a6cbc4744d4b7151b2fcef and df82ec8fe7d91467c8b479bba74c761c0a6ffc59 which was lost in the move away from automake. Note: This date call is designed to work with different flavors of date (GNU, BSD and others). If only GNU (Linux) support is needed, the patch can be simplified. This PR was done while working on reproducible builds for openSUSE. Type: fix Change-Id: If4cab12320e6b5fcb1f2842fac5d745b33b01ed7 Signed-off-by: Bernhard M. Wiedemann <bwiedemann@suse.de>
2019-12-17vlib: fix vector-as-C-string overflowBenoît Ganne2-3/+3
Type: fix Change-Id: If0419ff1a82d45e5b3326973008e1b9feb290c5a Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-12-17misc: address sanitizer: fix instrumentationBenoît Ganne3-1/+12
Type: fix Change-Id: I99e3951f8cfb7ab9d2f0a7dcee92199eab29043c Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-12-17classify: forbid invalid match configBenoît Ganne1-0/+3
Forbid too long match to be configured. Type: fix Change-Id: Icfced0f86821d5febd6a3c81e1315bd9737498c0 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-12-17ipsec: bind an SA to a workerNeale Ranns11-43/+644
the sequence number increment and the anti-replay window checks must be atomic. Given the vector nature of VPP we can't simply use atomic increments for sequence numbers, since a vector on thread 1 with lower sequence numbers could be 'overtaken' by packets on thread 2 with higher sequence numbers. The anti-replay logic requires a critical section, not just atomics, and we don't want that. So when the SA see the first packet it is bound to that worker all subsequent packets, that arrive on a different worker, are subject to a handoff. Type: feature Change-Id: Ia20a8645fb50622ea6235ab015a537f033d531a4 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-12-17dpdk: add devargs supportChenmin Sun4-12/+34
Type: feature This patch adds the devargs support for dpdk device The devargs are used as hardware-specific init args for dpdk devices please refer to the nic guides under $(DPDK_DIR)/doc/guides/nics/$(NIC_DRIVER).rst Signed-off-by: Chenmin Sun <chenmin.sun@intel.com> Change-Id: Id380d04720090bb66afe5ce09d664e5e248b8eb9
2019-12-17vppinfra: fix cpu flag string overflowBenoît Ganne1-7/+5
Type: fix Change-Id: Idb1fff8a172034044bb33d5b271a84d1fd672ef5 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-12-17perfmon: fix per-worker data initializationBenoît Ganne2-9/+14
When perfmon_init is called at initialization time worker threads are not created yet and vec_len(vlib_mains) returns 1. Initialize per-worker data when the number of workers is known, when enabling data collection instead. Type: fix Change-Id: I36887cc7b2a3e88d9728d3cd7262d9b1c968dd3c Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-12-17nhrp: mGREv6Neale Ranns1-4/+5
Type: test Change-Id: I7d0496c37e06d3b6eee325a262e5398860282b63 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-12-17l2: fix l2input_feat_names overflowBenoît Ganne1-1/+1
Type: fix Change-Id: I59549b3aab5a0ccfe7db02757f78528e028121a5 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-12-17virtio: fix the tx queue thread bindingMohsin Kazmi1-3/+17
Type: fix Change-Id: Ibbe7e20aebc9153ceba07e048dc0eaa45193f4ea Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-12-17quic: Implement crypto contextsNathan Skrzypczak4-77/+242
Type: feature Make quic use the crypto contexts. This introduces a crypto context pool backed by a hashtable giving ctx indexes by connect params (ckpair, engine, rx & tx fifo sizes). Applications keep the initialization vector common. Change-Id: I22ed6711196cd70a2f2f74240f12113c7af8dfcd Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-12-17gso: minor fixes to gso segmentationMohsin Kazmi1-110/+115
Type: fix Change-Id: I01602ba7f1a4820c7790a771a5a7281ed66ff905 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-12-17ip: Protocol Independent IP NeighborsNeale Ranns109-13299/+12825
Type: feature - ip-neighbour: generic neighbour handling; APIs, DBs, event handling, aging - arp: ARP protocol implementation - ip6-nd; IPv6 neighbor discovery implementation; separate ND, MLD, RA - ip6-link; manage link-local addresses - l2-arp-term; events separated from IP neighbours, since they are not the same. vnet retains just enough education to perform ND/ARP packet construction. arp and ip6-nd to be moved to plugins soon. Change-Id: I88dedd0006b299344f4c7024a0aa5baa6b9a8bbe Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-12-17vcl: RX event may lost when accept session repeatedlywanghanlin1-1/+1
Type: fix Some applications may call accept repeatedly to process all connect request until get EAGIAIN error. Subsequent call may get RX event of previous accepted session, then should process it rather than just discard it. Signed-off-by: wanghanlin <wanghanlin@corp.netease.com> Change-Id: Ice53442de66289a62591b79a9cc31e883e894c23
2019-12-17quic: update quicly to v0.0.8-vppMathiasRaoul2-6/+8
Type: feature Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com> Change-Id: I7470d79d1e39716ff83ba2d2b320813d79e2554c
2019-12-17fib: Glean on NBMA interface points to dropNeale Ranns2-86/+85
Type: fix Signed-off-by: Neale Ranns <nranns@cisco.com> Change-Id: Iaae7a9e120bbf8168c581b06d3ac0e124b32e0e7
2019-12-17fib: Adjacency walk fix for IPv6Neale Ranns1-1/+1
Type: fix Change-Id: Id3a1950e49d5eb1883af06a14df97e98f55162a8 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-12-16vppinfra: bihash walk cb typedef and continue/stop controlsNeale Ranns20-48/+92
Type: feature Change-Id: I28f7a658be3f3beec9ea32635b60d1d3a10d9b06 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-12-15fib: Adjacency creation notifications for dlegatesNeale Ranns6-1/+29
Type: feature Signed-off-by: Neale Ranns <nranns@cisco.com> Change-Id: I3feddfe44dee528b9ca05aa0150e9423306ae49d
2019-12-14tests: changes for scapy 2.4.3 migrationsnaramre10-16/+10
Type: fix Change-Id: I7e041b666dabd90df23a920a1f1d99db4c10ddfe Signed-off-by: snaramre <snaramre@cisco.com>
2019-12-13bonding: Add /if/lacp/<bond-sw_if_index>/<slave-sw_if_index>/partner-stateSteven Luong4-12/+64
We already had /if/lacp/<bond-sw_if_index>/<slave-sw_if_index>/state in the stats segment. Add also the partner-state to be complete. Change to populate stats segment with the states at startup, after processing an lacp pdu, and after timer expiration. Unit test --------- sudo vpp_get_stats dump | grep /if/lacp 63.00 /if/lacp/3/1/state 61.00 /if/lacp/3/1/partner-state 63.00 /if/lacp/3/2/state 61.00 /if/lacp/3/2/partner-state Type: feature Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: Ib7b8e1183d572bb6e422a846aaa2b7b3559a0dc7
2019-12-13hsa: Fix timing & nitsNathan Skrzypczak2-3/+9
Type: fix Change-Id: I4fef896a3556df75532ef938ca2e263287dd74e8 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-12-13ip: SVR: fix wrong return valueKlement Sekera2-2/+2
Type: fix Change-Id: I9498b660bf2045bb6aac96d19bb9456a14b35847 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-12-12ikev2: fix crash during SA rekeyFilip Tehlar3-1/+32
Type: fix Change-Id: Ib00ab9b2f28c0f4d85e96bf95697f61b8e415f37 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-12-12vcl: fix disconnect from binary apiFlorin Coras4-6/+11
Type: fix Change-Id: I4398d26879b5efd932fa1d9ae232aa918ec736d6 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-12-12vlib: fix "<command> help"Dave Barach1-13/+9
Walk the sub_commands vector directly. Type: fix Fixes: 6b3f25caff262b536a5449ac5461dd041c92a655 Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I3022b39e5a739647ec68effc6756166ce2da85b6
2019-12-12session svm: support for segments larger than 4GBFlorin Coras6-21/+20
Type: feature Change-Id: I7d3017bbb369261d74f51807a226f2c12f45291c Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-12-12gbp: use explicit types in apiOle Troan1-16/+17
Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: Ia886858fe608782d64a5346dd33e1e9fa22d8b8f
2019-12-12session svm: per thread fifo segment slicesFlorin Coras9-270/+411
Type: refactor Change-Id: I9be652e56cdb48b0aee3253f7ce8d9bed299d824 Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Dave Barach <dave@barachs.net>
2019-12-12avf: explicit types in apiOle Troan1-2/+3
Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: If693e066eeb9312d4535893c279446dc43e8baa2
2019-12-12nat: session cleanup fixFilip Varga8-79/+266
Ticket: VPP-1795 Type: fix Change-Id: Ib3b5742119d7013c293a11eb3dd1aadf46b422dd Signed-off-by: Filip Varga <fivarga@cisco.com>
2019-12-12rdma: add explicit types in apiOle Troan1-2/+3
Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I80c674b73b7f86cf159b8779aab31a87b20def9a
2019-12-11vcl: separate binary api connections per thread workerFlorin Coras5-35/+72
Type: fix Change-Id: I2d72efc74a3b0a5b9e4da265475b1b01bf361125 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-12-11api: Use vl_msg_push/pop_heapNathan Skrzypczak9-101/+61
Type: refactor Change-Id: I0eb46676fc22ce6825b2d879498df344b5a855e8 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-12-11session: Add mq debug cliNathan Skrzypczak3-8/+81
Type: feature This add a `show app message queue` cli command that shows mq size per app & thread. Change-Id: I5c6ce024b149fb7a47d899bc514c5a4887429982 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-12-11quic: Add support for unidirectional streamsNathan Skrzypczak8-5/+33
Type: feature Change-Id: I3a642626a444504594c5e3df40dbc92df54136f0 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-12-11hsa: Add option for multiple ipsNathan Skrzypczak5-44/+152
Type: feature Change-Id: I133f12f9075a09bda0c5c1ed143d03838b33f6da Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-12-11quic: Use per thread next_cidNathan Skrzypczak2-8/+10
Type: fix Change-Id: Ia89427257b78f6f7ba62c9d1076bf0593ee2dca7 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-12-11devices: vhost API cleanupJakub Grajciar7-29/+186
Use consistent API types. Type: fix Change-Id: I2dec594cb834a45004edc9ca58ad7c7b4bd7ff06 Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2019-12-11quic: Add aggregated quicly statsNathan Skrzypczak1-67/+186
Type: feature Change-Id: Ice8de7030a0330cfe77a58657701f0703e0695dd Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com> Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-12-11quic: add more detailed statisticsMathiasRaoul2-0/+67
Type: feature Change-Id: I3df7b054ec08c7b307413d24468fc3df6a5aacc3 Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com>
2019-12-11devices: tap API cleanupJakub Grajciar7-112/+153
Use consistent API types. Type: fix Change-Id: I11cc7f6347b7a60e5fd41e54f0c7994e2d81199f Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2019-12-10ipsec: Init salt value in SA creation CLI (so it's not random)Neale Ranns1-0/+1
Type: fix Change-Id: Idf4d0b59a1eb2c739a67a4786470884050f81561 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-12-10quic: removing quicly_send call from quic_accept_connectionMathiasRaoul1-9/+21
Type: fix Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com> Change-Id: I429b50b88c8e029b06854c7433d0bc77619e98a3
2019-12-10api: pass api and client main to rx threadFlorin Coras3-1/+34
Type: fix Change-Id: Ib8313e87a89c80045edd897924917a88b98d1937 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-12-10ioam: use explicit api typesOle Troan18-871/+154
Also remove API boilerplate. Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I62e795f5af3843af7912707ade4ba178ff326942
2019-12-10ip: use explicit types in apiOle Troan1-73/+74
Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I1fd190da28a765ba430952539c291a741aaa3dce
2019-12-10flowprobe: use explicit types in apiOle Troan4-25/+44
Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I4f1cccca7de0c07cee472bde80cd6b0ef60046bd