summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-10-31vppinfra: make coverity happy with vec_set_lenBenoît Ganne1-1/+6
Coverity gets confused by ASSERT((l) <= vec_max_len(v)) when l is 0. Type: fix Change-Id: I247d7015b148233d8f195bcf41e9a047b7a21309 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 70d5d4fa09520bd5825b49960ae896beca3535e8)
2019-10-31vppinfra: add clib_mem_free_sBenoît Ganne3-12/+12
IPsec zero-es all allocated key memory including memory sur-allocated by the allocator. Move it to its own function in clib mem infra to make it easier to instrument. Type: refactor Change-Id: Icd1c44d18b741e723864abce75ac93e2eff74b61 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 78af0a8c5ff1a33ff8dccb1b2ea6ffadb8ef7b62)
2019-10-31tcp: Init cwnd from ssthresh.Sergey Ivanushkin2-2/+38
Set high ssthresh out of the box and make configurable Type: fix Signed-off-by: Sergey Ivanushkin <sergey.ivanushkin@enea.com> Change-Id: Iba1549b4ee55e51468ad0b28ef3d26a85fa9cae0 (cherry picked from commit c30318da220953610820a2e7cd957da7046eaf4b)
2019-10-31session: increase max ctrl msg sizeFlorin Coras3-2/+13
Type: fix Connect ctrl message recently outgrew the maximum ctrl msg size, so increase the limit. Also add static asserts for messages that could potentially exceed the limit. Change-Id: I0d3e32e0d4d67d7e222cff14ddba59a0c3fb8b00 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit e24a4bc023b880cb01aeaf8ffea98f44dd66ef4a)
2019-10-31tcp: avoid head retransmit if scoreboard has no holesFlorin Coras2-3/+2
Type: fix Change-Id: I6164ad0d97cd91b60c85302eff691836d12a0a70 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 8a8b05c526883fe34b83239a3c4f56087d1df9e5)
2019-10-29gbp: missing contract hash-mode settingNeale Ranns1-3/+5
Type: fix Change-Id: Ia0f1e88b43e861d3f6965076c73cc48fb9574da3 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit bb098f176433d435471161f8be297d43b3558f4f)
2019-10-29l2: l2bd nd termination test instabilityOle Troan1-1/+1
The test for ND event suppression reused the previous test run ipv6 address, and would sometimes consider that a duplicate, and therefore suppressing that one too. Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I1b115aa4eba9d57770fa03fcf38b7a1c251cfe88 (cherry picked from commit df0191ead2cf39611714b6603cdc5bdddc445b57)
2019-10-29devices: vhoost cpu->copy array overflow on tcp jumbo frame (65535 bytes)Steven Luong2-2/+8
We reserve 40 slots in cpu->copy array prior to copy out to avoid overflowing the array. However, 40 is not enough for the jumbo frame because desceiptor buffer len is likely at 1536. Change the reserve to 200 and add ASSERT to avoid encountering the same problem in the future. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: Ibf0c03c4b4f33e781d5be8679ccd6c3a4b4a646d (cherry picked from commit 7331005c16d0e1499080899b2a0676a0cd945595)
2019-10-29build: add missing ldflags to exe and sharedBenoît Ganne1-0/+2
Type: fix Change-Id: I859bc6ebc574ab09fd70b45f8c911769d00e7acf Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 534de8b2a77cc2479a3f23cdb6df3d43cead06a6)
2019-10-29vppinfra: add vec_set_len()Benoît Ganne3-10/+19
l2-flood and bier nodes reset vector length without updating it to its effective size. Introduce a helper to do it (this allows ASAN to keep track of the new vector size). Type: refactor Change-Id: I2d652550c440f0553a2b49c3ee3d37b49ebc16c3 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 8a4bfdae87286ed281df855c58b669eb6b76aaf8)
2019-10-29tests: add PID of VPP under test to API dump filename for the testAndrew Yourtchenko1-1/+2
Some testclasses (e.g. IPSec) have methods with the same names, this causes a race when running in parallel to save the API and move it into the test's directory - the name of the file has only the test method name as a discriminator. Saving two traces from two VPP instances "succeeds", in that it silently overwrites the file. But only one mv operation works - the other gives an error "file not found" and fails the test. Solution: add the PID of VPP under test to the API dump filename, this way the filenames become guaranteed unique and the race is avoided. Change-Id: I1bb47ed73369fea0f1bfbf907588a51e2cabfb7f Type: test Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> (cherry picked from commit 586d3edf49f5dd8cd3e4f836afd562e21766914d)
2019-10-29vlib: enable worker-thread dispatch pcap traceDave Barach1-3/+7
Needed a bit of foreach_vlib_main(...) action to turn on/off all instances of vm->dispatch_pcap_enable, and to pick up the pcap_main_t pointer from vlib_global_main. Type: fix Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I49b69b87934c7dc7a9835cd07aa2c5c4d3c79f18 (cherry picked from commit 349cd1af77a27962e9475e9fa9c0ed15e2af23de)
2019-10-29misc: Update gitignore for /test/ext/.dNeale Ranns1-0/+1
.. otherwise i'm going to commit it accidentally Type: feature Change-Id: I0378b9a29a28ea7317bc7d234f8cbacdafd6b762 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit 8161d73d7eb292ce8d6212b3a1575eed12dfeee2)
2019-10-29tcp: fix mss flag in option parsingFlorin Coras1-1/+1
Type: fix Change-Id: Ib03151a097caf15e4e8285afea83d1b930a874b0 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit a9e1f7b99bcb2164f3481cf48134d4efe7319c04)
2019-10-29svm: immediate fifo growth even when wrappedRyujiro Shibuya2-8/+117
Type: fix - when the fifo is wrapped, and if applicable, insert a new chunk after the tail-chunk and rebuild the rb_tree. - make sure that this new algorithm can be applied only when the fifo is used by a single thread (master-thread of the fifo). Signed-off-by: Ryujiro Shibuya <ryujiro.shibuya@owmobility.com> Change-Id: I3fc187bc496ea537ca24381e4abc08d2906c9e03 (cherry picked from commit 8e20fe7ab445e2de80caabb298aef8a658f6d4ab)
2019-10-29tls: allow disconnects from main threadFlorin Coras1-1/+4
Type: fix Use api with explicit thread index to retrieve tls contex on close. Change-Id: Ibdc4338747300b7fc8f91ef3e10bcd48ce7ae366 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 6faac1622e0d5352da987c73a6f3f1ec55896116)
2019-10-29tcp: refactor flags into cfg and conn flagsFlorin Coras4-31/+89
Type: refactor Change-Id: Ib5e2ecf55732599e1322736e3662178c9da49c7d Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit bbcfaac9571004d87998684c123354667b726532)
2019-10-29tcp: improve pacing after idle send periodsFlorin Coras6-76/+124
Rest pacer on ack reception if we haven't recently sent anything. Type: feature Change-Id: I820bacd81b65130052dfafbfcbe6ca4553069fbc Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit c31dc31f84961033ecb6354811e0c360b6cf5f79)
2019-10-29ebuild: Unite default build platform to vppjuraj.linkes1-1/+1
Top level makefile is using vpp as the default platform. The other place where platform is specified has native as the default. Unite them to the only currently supported platform - vpp. Type: make Change-Id: Idb12ccc3056dd6be640a2d6763dc30e4f789d2ac Signed-off-by: juraj.linkes <juraj.linkes@pantheon.tech> (cherry picked from commit 664ec91fdea75c90c3b9c8086a9a97df32a6f91b)
2019-10-29misc: 19.04.3 Release NotesDave Wallace1-0/+9
Type: docs Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I43a236be5289c50dafbede08beabe4c09ff3c892
2019-10-27bonding: fix interface deletionBenoît Ganne1-15/+7
Copy sw_if_index value instead of using pointers to original bif->slaves content which could be overriden by eg. vec_del1(). Type: feature Change-Id: I37e458effd6b2367479574f7bd3facd4e93bada4 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit cc3aac05697976b512ce68017ca02b27d613eff2)
2019-10-27misc: (cdp) fix non-null terminated vector useBenoît Ganne1-1/+1
Type: fix Change-Id: I31e5d9d9e93339eb789aed20996f326b085c22a9 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 94e4dea15ac704a40617fe8bcfcce74e2d890856)
2019-10-27svm: reset vector data instead of lengthBenoît Ganne1-1/+1
Reseting vector length confuses ASAN and does not reset data either. Only reset data instead. Type: fix Change-Id: Id60b8333df28a5b636a9d302b987bbad95c85c38 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit a9f1e7d4fd764b4f68e830528dbd296921050293)
2019-10-27session: fix use-after-freeBenoît Ganne1-1/+1
Type: fix Change-Id: Ie63b80db56febc8a16bafcdd5399b2f92b6aa437 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 94d2da0b294b0084dd97217e79de18842f09356b)
2019-10-27ipip: fix typos in short_helpIgnas Bacius1-3/+3
Type: fix Signed-off-by: Ignas Bacius <ignas@noia.network> Change-Id: Ica069e8c9dd4efd1f00639754da471bf11418b57 (cherry picked from commit 3d93ad9f33c8743ba3a6d3babdd1d25fdfbf0c6e)
2019-10-27gbp: Add extended SFC unit testsMohsin Kazmi1-2/+459
Type: feature Change-Id: I1218257af0053ae27c4394d7666fde87a732e08c Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com> Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit a3c8ca10e9fb09e81a0dba40ad8a5fc6a9d27467)
2019-10-27ping: Move to pluginMohsin Kazmi8-23/+50
Type: refactor Change-Id: I51d5bf54dfd408aa0c406cbdf0f4be10ef19d10d Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com> (cherry picked from commit 26c7a4b0b6488423688f4a7f3c8aacf0d1b9c742)
2019-10-27tests: make pg_start() wait until pg completesAndrew Yourtchenko1-19/+13
A sizable number of tests call pg_start() to get the packets flowing and then immediately expect to have the entirety of the packets gone through. This works on powerful and unstressed hardware, but fails in beautifully random ways under load. This also necessitates the complicated logic of remembering the "zombie captures", then sleeping for some time before cleaning them up.... The solution is simple: in pg_start(), start the generators, wait till they all finish, clean up, done. Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Change-Id: I930e51b7aae39c9841d22dd905a4d13a465a672b Type: test (cherry picked from commit 8d829f6c480cdd6536537fc49356baa1878b9570)
2019-10-27tests: log error which happens during connect and wait longer for stats socketAndrew Yourtchenko1-2/+3
Intermittently, a test would start VPP, but no testcases would execute. This would be more probable apparent during the high load or if there is another testcase dumping the core at that moment. Adding the logging to the connection revealed it was the stats socket connection erroring with error -2. Increasing the deadline from 3 seconds to 5 minutes has eliminated this error. Change-Id: I40bd7e642abb9e2aef0238c612e4c34781de5db2 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Type: test (cherry picked from commit 4f05a8e408cba09057841d97cd5e7da3058836d1)
2019-10-27tests: explicitly wait for the PG to finish before looking for capture fileAndrew Yourtchenko1-0/+15
Rather than only using time-based method of periodically checking whether the pcap file appeared, first check that the packet generator has stopped. To make this change fail-safe, have a 5-minute timeout on this activity, just in case the things go terribly wrong. Type: test Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Change-Id: Id16b2802b2de8a4cafb5d9f0a8c9ba62ec89dc32 (cherry picked from commit 3d36f19a0febaed532bd255a150504f7af8f18c2)
2019-10-27tcp: retry lost retransmitsFlorin Coras7-155/+205
Add heuristic that detects lost retransmitted segments and retries sending them. Type: feature Change-Id: I34d1bb16799e1993779222eb2bfad4b40704159e Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit be237bf02382854118986e8ea84c7544e42023f2)
2019-10-27sr: fix deleting an SR l2 steering policyAhmed Abdelsalam1-3/+7
Type: fix Signed-off-by: Ahmed Abdelsalam <ahabdels@cisco.com> Change-Id: I9e98b1622785e58484bf316ef491e44cfb06bcb7 (cherry picked from commit a6b93eac5979f1f1166cdf6f8bfa216b243b2662)
2019-10-27ikev2: fix dangling pointerFilip Tehlar2-14/+28
Type: fix Change-Id: I8aa9029e0a5cf21aa24a90b39eb2787653f65abb Signed-off-by: Filip Tehlar <ftehlar@cisco.com> (cherry picked from commit 1890e9ce57a4b6dbc732f8f11d78001bea7c5855)
2019-10-27build: clean up make help outputDave Wallace2-52/+52
This change is designed to help the uninformed find the right way to run extended tests by using the test-all[-debug] targets. 'make test EXTENDED_TESTS=y' fails to build as it has a dependency on 'vom-install' which is conveniently included in test-all[-debug]. - clarify test-all[-debug] description and make test-help description - Also align indentation of make help output Type: style Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: Ief54cc8a5af68c052aacb0d660237c5eb63451b5 (cherry picked from commit 2777ec761514fc0838ad11e6232ad97897663356)
2019-10-27vlib: fix cli process stack overflowChenmin Sun1-1/+1
Type: fix Some cli processes, including configuring an test flow on an i40e interface consume more than the currently available stack space. Signed-off-by: Chenmin Sun <chenmin.sun@intel.com> Change-Id: I3df53d251cd43286f94647384d6e50a463bad15c (cherry picked from commit 2fd44a00aa26188ca75f0accd734f21758c199bf)
2019-10-27quic: fix wrong condition in update_fifo_sizeMathiasRaoul1-1/+1
Type: fix Signed-off-by: MathiasRaoul <mathias.raoul@gmail.com> Change-Id: If371cde9412be29634164830c58634da248ad0ae (cherry picked from commit cc702410c18b5c54ec8686b02a0d208c9bc80421)
2019-10-23vppinfra: fix page boundary crossing bug in hash_memory64Dave Barach2-4/+109
Fix a day-1 bug, possibly dating back as far as 2002. The zap64() game involves fetching 8 byte chunks, and clearing octets not to be included in the key. That's fine *unless* the 8-byte fetch happens to cross a page boundary into unmapped or no-access space. Type: fix Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I4607e9840032257c96ba7387f86c931c0921749d (cherry picked from commit 7e2cea3d26701ff1d80fda7d8ca907890e3e7baa)
2019-10-22gbp: use correct dst mac for RD-UU forwardBenoît Ganne1-1/+1
Type: fix Change-Id: Ifdd193fab24796346b11a5df81740880f9a50ee8 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit db056acca08900d05ef806a6bab74ea30b262f0f)
2019-10-22bonding: feature arc may not be enabled for the slave interfaceSteven Luong1-2/+2
vnet_feature_enable_disable takes sw_if_index, not hw_if_index. If there is a subinterface created prior to the slave interface is created, sw_if_index and hw_if_index start to diverge and the problem will happen. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I11e1f099378832f83b748526c6cbeb56960fad3c (cherry picked from commit 1a41a35b27da6921d6d86a9f1ad5f1b46e1185f7)
2019-10-22ip: fix clang debug compilationBenoît Ganne1-3/+1
The non-extern declaration confuses clang linker in debug mode. The function is defined as inline above anyway. Type: fix Fixes: c6215d902f Change-Id: Ic7e4477631cf0bcfb31ab3f81effe3642dd4223e Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 5b1379be3e25df096d97dcd217965169fc6bb1b2)
2019-10-22tcp: fix tso not work in single buffer issueSimon Zhang2-6/+9
Type: fix Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com> Change-Id: Iddb6fd41812e8c97af58859ef43279cfc0f9d1df Signed-off-by: Simon Zhang <yuwei1.zhang@intel.com> (cherry picked from commit 8a047ed741072bdb8d93b0841473eae06ae3c9d0)
2019-10-22mpls: support fragmentation of mpls output packetRajesh Goel7-16/+176
Type: fix Signed-off-by: Rajesh Goel <rajegoel@cisco.com> Change-Id: Ie4372c5cf58ab215cdec5ce56f8a994daaba2844 (cherry picked from commit d6f1c9c5141c177a14d011a514e392a9357398fb)
2019-10-22ip: only install IPv6 prefixes in FIB when the interface is upNeale Ranns1-39/+36
otherwise they get installed twice and the reference counting means they are not removed. This is the same behaviour as IPv4. Type: fix Change-Id: I9266e04ccff6ff06a577e85973a2ddbeb9dfc52b Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit 1ff3c15b3c7607c9b590ad44d18dea5eb1cb8c4e)
2019-10-22fib: P2P interfaces do not need specific multicast adjacenciesNeale Ranns1-3/+18
they can use the 'auto' adj for all traffic Type: fix Change-Id: Id2b9557683252a94badc8f9dfab5f7b2ae26f1ee Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit da0e7497ca972f3219352d884b5c51e455503dbb)
2019-10-22tests: handle unicode charactes in cli outputKlement Sekera1-1/+2
Type: fix Change-Id: Ic4fb53e6d10a1de155a3088be81d53d9efeb0c0f Signed-off-by: Klement Sekera <ksekera@cisco.com> (cherry picked from commit 6be55648334308d4eaa4a02143b968720bb62078)
2019-10-22build: add env variable to pass extra cmake argsNathan Skrzypczak1-0/+4
If VPP_EXTRA_CMAKE_ARGS is set, its content will be appended to the vpp cmake command cli Type: feature Change-Id: I825d4239e62b0a2fb70a652f0671f6c559630aad Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com> (cherry picked from commit 29736540335fb983f472457883e9fefde61bd913)
2019-10-18tcp: rate sample for persist segmentsFlorin Coras1-0/+6
Type: fix Change-Id: I7c38d2ad6364f098529f51c15b533eb234b82716 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit dd60b1b128d8d6c07dc8b8bcbf932b808cedbaab)
2019-10-18vlib: move thread barrier around mod of global node next dataChristian E. Hopps1-6/+5
The old code modified the node next array prior to obtaining the thread barrier. Then it updated the runtime node data, and upon barrier release caused reforking of each worker thread. The reforking clones the main thread nodes and reconstructs the runtime node structure. This cloning is not 100% "deep" in the sense that the node next array is shared (i.e., only the pointer is copied). So prior to the barrier being obtained the node's next array is being changed while workers are actively using it (bad). Treating the node next array as read-only in the workers and sharing it is a decent optimization so instead of trying to fix that just move the barrier a little earlier in the process to protect the node next array as well. This was tripping an assert in next frame ownership change by way of the ip4-arp node. The assert verifies that the node's next array length is equal to the runtime next node count. The race above was lost and the node next array data was updated in the main thread while the arp code was still executing in a worker. This was being hit when many arp requests were being sent from both ends of a tunnel during which the add next node function was called, which often led to an assert b/c the next node array was out of sync with the runtime next node count. - PS#2 update - move barrier sync to just above code that modifies state. Ticket: VPP-1783 Type: fix Signed-off-by: Christian E. Hopps <chopps@chopps.org> Change-Id: I868784e28f994ee0922aaaae11c4894a3f4f1fe7 Signed-off-by: Christian E. Hopps <chopps@chopps.org> (cherry picked from commit d3122ef4ecfa9a515cc39c1632d29e43fa771b2a)
2019-10-18dhcp: API return code fixNeale Ranns1-2/+2
Type: fix Change-Id: Ifcbfeecd6ca1215ec473eec4cce736ab4eacde80 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit d751746af9ca1130202d19bddd96a5f6af2ecc5c)
2019-10-18ip: Fix IP unnumbered dump of one interfaceNeale Ranns2-1/+10
Type: fix Change-Id: I35fb6fdfba50c4a59cf1ffb94cb51487bcf5afc9 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit ac3e72cb9765f78f1cf03ff5d5ccd9ff944668b6)