summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2017-08-30Thread safe internal buffer manager, take twoDamjan Marion3-4/+32
First attempt to make internal buffer manager thread safe was not succesfull, so trying again. This time with more testing. Change-Id: I01b8385a9c26d233934a3339255ea4bd31c865ac Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-30tcp: re-enable persist timer if no data available to sendFlorin Coras3-5/+26
Additionally, flush rx fifos for closed sessions. Change-Id: If2cc563fbda0451e7572650e98b15f0a694a0ff9 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-08-30Offload prep calls needed for IP and UDP checksum offload pktsDave Barach1-1/+4
Change-Id: I9b29bcff348bddfb49b1c38b1d409249e37bb075 Signed-off-by: Dave Barach <dave@barachs.net>
2017-08-30vhost: Cache qsz_mask instead of qsz in vhost_user_vring_tSteven2-32/+28
In the data path, we grab qsz from vhost_user_vring_t to compute qsz_mask and store it in a stack variable to use on many occasions. We never use qsz for any meaningful purpose. It is more useful to cache qsz_mask in vhost_user_vring_t to avoid the needless computation in the data path. Change-Id: Idf4d94a9754d5c75c899f1f4f59602275b9904a6 Signed-off-by: Steven <sluong@cisco.com>
2017-08-29Fix static mapping lookup issue for NAT pluginHongjun Ni1-0/+1
Change-Id: Ic99d1db5360f69126b23bb2b78f29d6404cbbae9 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2017-08-29Fix some issue of comment and help for nat featureHongjun Ni1-3/+3
Change-Id: I9233e427b5f8874492fefb2bfe7c1ab329e366b2 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2017-08-29session: segment manager improvementsFlorin Coras12-190/+407
- cleanup connects segment manager even if first - fix segment manager allocation for listen sessions - improve handling of process private segments (mheaps/main heap) - added segment manager cli Change-Id: Ic2ca97c3622ab2286d5fb5772aeb57680e64f769 Signed-off-by: Florin Coras <fcoras@cisco.com> Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-08-29Fix for bootstrap crash when VPP compiled with gcc-7Marco Varlese1-1/+1
See issue VPP-964 Change-Id: I2aed5abdc02e47e7bb5b0ce78cb6589a1ce7302f Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-08-29Flowprobe: Fix flow start time and hash computationPierre Pfister2-25/+21
Upon hash collision, the flow start time was not reset. The hash computation techniques (crc32 or xxhash) also both had bugs which are now fixed. Change-Id: I94d72997f34018d1699324264f7dded2a5cbd776 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2017-08-28vhost: Remove operation mode in the APISteven1-6/+0
create/delete/modify vhost_user APIs no longer support the operation mode (polling/interrupt/adaptive). They are now done via the generic interface. Change-Id: I9e9bd503f9b56c953ecd2b271b3e2007da20c72a Signed-off-by: Steven <sluong@cisco.com>
2017-08-25jvpp: adding debug usage into test documentationMatej Perina5-1/+14
added debug version commands to Readme files for example tests Change-Id: Icc5d5cdd33efb6d7c7512c7a78e22d9dc3d31fdc Signed-off-by: Matej Perina <mperina@cisco.com>
2017-08-25TCP horizontal scalingDave Barach6-24/+38
- Remove frame handoff support machinery. We haven't used it in a long time. - Configuration support for the local endpoints bihash table - Drop lookup failure packets in tcp46_syn_sent Change-Id: Icd51e6785f74661c741e76fac23d21c4cc998d17 Signed-off-by: Dave Barach <dave@barachs.net>
2017-08-25dpdk: bump to dpdk 17.08, remove support for dpdk 17.02Damjan Marion5-35/+4
Change-Id: I674fb1212e48693939045523df085326a4dd1809 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-25acl-plugin: warning printed when acl_add_replace already applied ACLs ↵Andrew Yourtchenko4-17/+49
(complete the fix for VPP-935) The fix for VPP-935 missed the case that hash_acl_add() and hash_acl_delete() may be called during the replacement of the existing applied ACL, as a result the "applied" logic needs to be replicated for the hash acls separately, since it is a lower layer. Change-Id: I7dcb2b120fcbdceb5e59acb5029f9eb77bd0f240 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> (cherry picked from commit ce9714032d36d18abe72981552219dff871ff392)
2017-08-25tcp: retransmit and multi-buffer segment fixes and improvementsFlorin Coras9-182/+319
- set session state as closed on session manager delete - enable retransmit as opposed to persist timer after persist timer completes - properly discard buffer chain bytes when new data overlaps ooo segments - don't use rxt bytes in snd space estimate used on tx path Change-Id: Id9cab686e532e5fe70c775d5440260e8eb890a9f Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-08-25Use Quad-loop to improve gtpu-encap performanceHongjun Ni1-49/+194
Change-Id: I440fae09e77502392af5cde45dd9c532afa5d976 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2017-08-25jvpp: introducing callback api and future api tests for all plugins (VPP-591)Matej Perina21-1/+725
test can be run with: make test TEST=test_jvpp memory_shared.c: declaring and assigning variable in if statement makes it usage outside statement impossible. Looks like memory space assigned to variable declared in statement is freed when statement ends svm.c: - fixed case when root path can have a "/" at beggining - added option for test to operate over shared memory space with /vpe-api name and not create new one with name consisting of root path and region name which would require root permisions Change-Id: Iff1170dc6a5c1be134c152f2757c7ab9b919a8ed Signed-off-by: Matej Perina <mperina@cisco.com>
2017-08-25dpdk: required changes for 17.08Sergio Gonzalez Monroy10-226/+531
DPDK 17.08 breaks ethdev and cryptodev APIs. Address those changes while keeping backwards compatibility for DPDK 17.02 and 17.05. Change-Id: Idd6ac264d0d047fe586c41d4c4ca74e8fc778a54 Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
2017-08-25Fix crash when TCP client using VPP host stack connects firsttjanciga1-0/+6
VPP is crashing without this fix if there is not any server using VPP host stack and client attemts to connect. Change-Id: I672977f78180bbc5ba9259116b2e165363463ccd Signed-off-by: tjanciga <tomas.janciga@pantheon.tech>
2017-08-25vl_api_sw_interface_set_mtu_t_handler: fix assert in vnet_get_hw_interfaceAndrew Yourtchenko1-3/+10
The handler was calling the routines with sw_if_index instead of hw_if_index, fix that by an extra call to vnet_get_sw_interface, and check that the interface type is VNET_SW_INTERFACE_TYPE_HARDWARE before proceeding. Change-Id: I4a6f65f44e250ecdb2b72d2693c9d7db5a52b966 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> (cherry picked from commit 778df28c2a1520f58c293700c578bdd73e61cecf)
2017-08-24Make VPP runtime directory configurableDamjan Marion8-42/+90
New startup config command: unix { runtime-dir /run/vpp } Also, adds recursive mkdir funtion for use in deifferent places like cli-config socket path and dpdk hugepage directory path. Change-Id: I1446ceab9c220c25804e73a743a3ebb383450124 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-24Fix initialization bug in sock_test_clientDave Wallace1-0/+3
Change-Id: Ieeae23a81f6f747b96c2a115bd8a62e8962428cd Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-08-24NAT64: Fix error message typo (VPP-961)Matus Fabian1-5/+6
Change-Id: Ieb81c5e157e342cbb532bd65f3b64059e5838691 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-08-24jvpp: use (*env)->ExceptionClear before calling (*env)->ExceptionOccurredMarek Gradzki1-1/+4
Change-Id: I6cca455ead986cb8a507c84957a97a40b733b16c Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-23NAT64: Fix CLI typo (VPP-961)Matus Fabian2-4/+4
Change-Id: I99e2766a118754387c9f238fc1b46057ee8a23e7 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-08-23tcp: add tcp.api.h to nobase includeFlorin Coras1-1/+2
Change-Id: Idcd78a21f4f2b6c1223123b5cc50a470ccd57e83 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-08-23Remove unused retval from gpe_native_fwd_rpath type definitionMarek Gradzki1-2/+0
Change-Id: I89a10204454aeea07412289b153ba50d6a15498c Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-23gpe: add l2 lb countersFlorin Coras1-1/+5
Change-Id: I81b3fc6266ad02239b6f1a216adc283efdcf0dce Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-08-23NAT: Rename snat plugin to nat (VPP-955)Matus Fabian36-435/+2336
Change-Id: I30a7e3da7a4efc6038a91e27b48045d4b07e2764 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-08-23Fix vl_map_shmem() root_path dangling reference.Dave Wallace1-5/+8
Change-Id: I90c9d8e151cacf50a99ce76b7a589079303196e8 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-08-23Enabled gid vpp in startup.conf to allow non-root vppctl accessEd Warnicke1-0/+1
Change-Id: I1ca9736dbefc9c284f5176de176fcc3dd1bfcd82 Signed-off-by: Ed Warnicke <eaw@cisco.com>
2017-08-22acl-plugin: Recreate the bihash_40_8.h in the proper placeAndrew Yourtchenko4-11/+15
Change-Id: I30a3df53bc5fe5ab991a657918eb502bd2913440 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2017-08-22dpdk: fix Cavium ThunderX supportDamjan Marion2-0/+5
Change-Id: Id5812448917ce52984d5a778d5b304c448a752e7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-22Increase default MAC learn limit and check it in learn-update pathJohn Lo5-4/+8
1. Increase default MAC learn limit from 1M to 8M entries. 2. Check MAC learn limit in MAC learning update path. 3. Allow disable of want_l2_macs_events to set MAC learn limit 4. Other minor cleanups Change-Id: I62438440937b5fa455e16f4a2e4d910277753395 Signed-off-by: John Lo <loj@cisco.com>
2017-08-22policer: remove unused codeDamjan Marion1-4/+0
This is causing compiler error with gcc 7. Change-Id: Ia65ee9d80ab263c79e82ad805e5cc5a12af91f85 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-22SRv6 testsKris Michielsen3-32/+201
Change-Id: Ib1d2fc5a83d9d007a0468591a73881675f1bec9b Signed-off-by: Kris Michielsen <kmichiel@cisco.com>
2017-08-22ping: remove unnecesary x86 intrinsics #includeDamjan Marion1-1/+0
This include file is present only on x86 so it breaks non-x86 builds. Change-Id: I6406b0b36f207b684535961545e95dbba707d267 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-21PPPoE usses a midchain adjacency stack on an interface-tx DPONeale Ranns15-991/+899
1) introduce an interface-tx DPO. This is a simple wrapper around a sw_if_index. enhance DPO stacking functions to allow per-instance next-nodes and hence allow children to stack onto the interface per-instance tx node and not on 'interface-output'. 2) update PPPoE code to use ta midchain stack on a interface-tx DPO of the encap-interface. This remove the need for pppoe_encap node (which is replaced by the adj-midchain-tx) and interface-output node is no longer used (see above). Since PPPoE encap node is no longer needed, the PPPoE seesion does not need to be retrieved in the data-path, hence the cahce misses are removed. Change-Id: Id8b40f53daa14889a9c51d802e14fed7fba4399a Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-08-19Fixed ip add bug for ip6 with review commentspragash1-4/+4
Change-Id: Ie1fba1a32020775444c7b1ed800e8559b54691ff Signed-off-by: pragash <pxv3620@rit.edu>
2017-08-18session: fix multi-buffer segmentsFlorin Coras3-34/+40
Change-Id: I0e22c85ea570b934b9c78dc5e86d86d690bdae5e Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-08-18gpe: fix sub-interface hash lookupFlorin Coras2-10/+10
Change-Id: Ice6b3818ee24c7c248bf61e4d6c1ef2a85cb8fb1 Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-08-18Python API: Fix error message typo.Ole Troan1-1/+1
Change-Id: Icb67797a91a5929e57a08b79adeca226fee09de3 Signed-off-by: Ole Troan <ot@cisco.com>
2017-08-18API: More gracefully fail when opening shared memory segment fails.Ole Troan3-8/+15
API clients would fail with an ASSERT (and core dump) whenever the API shared memory segment could not be opened. This returns an error value to the client's connect instead. Change-Id: Id122a3a090b24b139c382ae09f341bde61fd2540 Signed-off-by: Ole Troan <ot@cisco.com>
2017-08-18IP4_FIB stats API not indexing after FIB changes - VPP-951Keith Burns (alagalah)1-1/+3
Change-Id: I9ec36ee82ddd8f2f7a551b458e19b2fbae4aa7e7 Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2017-08-18feature: exit on misconfigured features (VPP-915)Florin Coras1-3/+7
Change-Id: Ifa11f356d727b69cb121a2bf4cfb9d87883f545d Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-08-18Use correct msg ID in the sw-interface-event from TAP and VHOSTNeale Ranns2-2/+2
Change-Id: I0124fa264f7f390fc7cd9722da59be03116831c5 Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-08-18Fix vpp crash when adding macip aclPavel Kotucek1-1/+1
When adding at least two different types of MACIP acl vpp crash. Change-Id: Ibbc76b94015311945be081fe0d8af71cf0672332 Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2017-08-18Fix small issues in ACL apiPavel Kotucek1-3/+11
Enable IP address without prefix length, if not given use max (32/128) Parse correctly type of acl (ipv4). Change-Id: I3d5d6b45037c9e0f95d2d112ae584f006c6cb4d1 Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2017-08-18acl-plugin: time out the sessions created by main thread too (VPP-948)Andrew Yourtchenko4-13/+28
In multithread setup the main thread may send packets, which may pass through the node with permit+reflect action. This creates the connection in lists for thread0, however in multithread there are no interupt handlers there. Ensure we are not spending too much time spinning in a tight cycle by suspending the main cleaner thread until the current iteration of interrupts is processed. Change-Id: Idb7346737757ee9a67b5d3e549bc9ad9aab22e89 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> (cherry picked from commit c1ff53f25d04ec1cc31844abd38014e91e398b5f)
2017-08-17TCP source address automationDave Barach8-17/+486
- v6 support - Non-default VRF ID collection - Break up ip source address list into CLI + API-friendly functions - Automate proxy arp / proxy nd configuration - Automate local adjacency insertion - Binary API support Change-Id: Iede31184f65cc1ec8c414447d2d60a1334e3fe15 Signed-off-by: Dave Barach <dave@barachs.net>