aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet
AgeCommit message (Collapse)AuthorFilesLines
2019-11-05tcp: avoid sending acks when data availableFlorin Coras3-5/+24
Type: fix Change-Id: I02e2cb2d349f9ddb2bfed040a08ca448f379d565 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit cb711a4ec908b89edc9da29d3c2e093dab85fbbf)
2019-11-05session: avoid old io dispatch if no slots left to sendRyujiro Shibuya1-2/+3
Type: fix Signed-off-by: Ryujiro Shibuya <Ryujiro.Shibuya@owmobility.com> Change-Id: I8e1f6cbd905ad5c21aed1b2e358540d0fbd7fc47 (cherry picked from commit 2a1118411deed799e079bf34d3f6d8bccb37f8c5)
2019-11-03gso: fix buffers traceAndrew Yourtchenko1-0/+1
When segmenting, new buffers must inherit the original buffer trace handle. Type: fix Change-Id: Ibd1859a501b2862906dfc563b98652cfee5681da Signed-off-by: Benoît Ganne <bganne@cisco.com> Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-11-03ipsec: fix tunnel protection removalFilip Tehlar1-1/+1
Type: fix Change-Id: I4d5546d1f9b3a162291997f6f0c094c5c3d6cf31 Signed-off-by: Filip Tehlar <ftehlar@cisco.com> (cherry picked from commit 89b24950005914317c142149fa1ba8a167a978ca)
2019-10-31tcp: correct tcp connection lookup conditionRyujiro Shibuya1-7/+10
Type: fix Signed-off-by: Ryujiro Shibuya <ryujiro.shibuya@owmobility.com> Change-Id: Ibdbac568d5f765e6b5c959cab5e32dc33335064d (cherry picked from commit c8be851161739d9f0b1c4bfbda4e991461ff0bc9)
2019-10-31tcp: improve rate samples for retansmitted segmentsFlorin Coras3-77/+184
Type: fix - Initialize max_seq on both transmitted and retransmitted segments - Keep track of segments that have been sacked. - Track new data segments sent during recovery Change-Id: Ice55231a3da200ae6171702e54b2ce155f831143 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit d6ae4bf13a7819d64d128d196d491af4700fa948)
2019-10-31tcp: fix sack retransmit beyond snd_nxtFlorin Coras2-2/+13
Type: fix Ensure that sack retransmit logic does not try to inadvertently send new data. Change-Id: Idfda19643577d9c1b58e2af8d8283cabfbaf98e6 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 81cb8e4092991d3fd1e24f0862c12548a2d4c714)
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-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-29vppinfra: add vec_set_len()Benoît Ganne2-4/+6
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-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-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-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-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-27ping: Move to pluginMohsin Kazmi6-1370/+11
Type: refactor Change-Id: I51d5bf54dfd408aa0c406cbdf0f4be10ef19d10d Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com> (cherry picked from commit 26c7a4b0b6488423688f4a7f3c8aacf0d1b9c742)
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-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 Goel6-16/+120
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-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-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 Ranns1-1/+1
Type: fix Change-Id: I35fb6fdfba50c4a59cf1ffb94cb51487bcf5afc9 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit ac3e72cb9765f78f1cf03ff5d5ccd9ff944668b6)
2019-10-17fib: fix use-after-free for interface adj removalBenoît Ganne1-0/+3
Type: fix Change-Id: I82308e368d14d84f5970dad229bdcf2de7d1839d Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 7391156ce68a81f258d65f498ec6161d694fae47)
2019-10-17bonding: graph node running after bond-input in feature arc may crashSteven Luong2-3/+42
In bond RX quad loop, when all packets within the frame have the same incoming interface, we cannot skip calling bond_update_next because that function calls vnet_feature_next() to update the b->current_config_index. The next node needs the correct b->current_config_index to work with. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I3d8b3d4e0f95490f406fae7638f0c43c301ce664 (cherry picked from commit 71e5b4710258376873c62428cb4a81b2a650fc26)
2019-10-17ip: RD-CP API incorrect reply codeNeale Ranns1-1/+1
Type: fix Change-Id: Ie436d51999dc1384a0db492f28a7e66620e14551 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit be01e635bcc942395c581eeb5a108edaaa82e36f)
2019-10-17fib: recursive calculation leads to delegate pool reallocNeale Ranns1-4/+14
Type: fix Change-Id: Ib7ac53d1b59b641ccd3b1d733107d7f1ba174314 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit a66020becd7d01eefea55244cbcf5df9679a9443)
2019-10-16misc: add "maxframe" and "rate" to packet-generator cli.Christian E. Hopps3-5/+13
Allow for setting the maximum number of generated packets to be included in the frame passed to next nodes. This is very important for testing code which may be susceptible to multi-frame vs single-frame bugs (e.g., code that is doing re-ordering where packets may be buffered between frames). Update: - remove redundant packet "rate" option. - reduce n_max_frame to u32 as that's what pulled from the CLI. Type: feature Signed-off-by: Christian E. Hopps <chopps@chopps.org> Change-Id: Ie362bbb110b2cf01d9f65c559bbe9101e17b7fdc Signed-off-by: Christian Hopps <chopps@labn.net> (cherry picked from commit 87d7bac5cf2ebdc7820e1edaadc2cc3b6d111cf2)
2019-10-15ip: fix use-after-free in IPv6 SLAAC expirationBenoît Ganne1-3/+11
Type: fix Change-Id: I46b166b3a10c4543eafa4422531dd3c725db45f1 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 79c9d3650357fa675df2998e362e9881cff17a34)
2019-10-14devices: vhost not reading packets from vringSteven Luong2-0/+25
In a rare event, after the vhost protocol message exchange has finished and the interface had been brought up successfully, the driver MAY still change its mind about the memory regions by sending new memory maps via SET_MEM_TABLE. Upon processing SET_MEM_TABLE, VPP invalidates the old memory regions and the descriptor tables. But it does not re-compute the new descriptor tables based on the new memory maps. Since VPP does not have the descriptor tables, it does not read the packets from the vring. In the normal working case, after SET_MEM_TABLE, the driver follows up with SET_VRING_ADDRESS which VPP computes the descriptor tables. The fix is to stash away the descriptor table addresses from SET_VRING_ADDRESS. Re-compute the new descriptor tables when processing SET_MEM_TABLE if descriptor table addresses are known. Type: fix Ticket: VPP-1784 Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I3361f14c3a0372b8d07943eb6aa4b3a3f10708f9 (cherry picked from commit 61b8ba69f7a9540ed00576504528ce439f0286f5)
2019-10-14ip: MFIB CLI fix for parsing path flagsNeale Ranns2-3/+4
Type: fix Change-Id: I7ed9726d8c5ca26715a84b004a18fd7f93142486 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit 46023762d1da674ff73954f0d1523d450bfcf03c)
2019-10-11lisp: fix dangling references to bihash tablesDave Barach1-6/+26
gid_ip4_table_t's and gid_ip6_table_t's are allocated from pools. They MUST NOT be listed on the clib_all_bihash list to avoid dangling references. Switch to the clib_bihash_init2 API, which has the required knob. Type: fix Ticket: VPP-1788 Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I49a17e937922c3af2e1c46b24e20883af51584a8
2019-10-11session: fix use-after-freeBenoît Ganne4-4/+5
Make sure to reinitialize data before free-ing it. Type: fix Change-Id: I45727c456d0345204d4825ecdd9690c5ebeb5e94 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit d4aeb84c3f066b755b723163da292eab95bd1ef9)
2019-10-10tcp: custom checksum calculations for Ipv4/Ipv6Srikanth A6-122/+194
Type: feature Based on the configuration, we can disable checksum offload capability and calculate checksum while pushing the TCP & IP header. This saves some cycles when VPP stack is used in legacy hardware devices. Signed-off-by: Srikanth A <srakula@cisco.com> Change-Id: Ic1b3fcf3040917e47ee65263694ebf7437ac5668
2019-10-07ipsec: fix use-after-freeBenoît Ganne1-3/+7
When deleting interface from the API, 'hi' gets removed before 'h->sw_if_index' is copied. Type: fix Change-Id: I8e10108e9bdf95ab2fe002790d98262d583ca58c Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 8133c780a22480496c74a4ead321e8350d5beeb4)
2019-10-07bonding: fix non-null-terminated C-stringBenoît Ganne1-2/+8
Type: fix Change-Id: Ibb7ba878b049b8b18e890c43fdd6324cb88d63b8 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 5c828bc1f24fb5222d6bb634d8e5228ed8b138f0)
2019-10-05bonding: traffic traversing the wrong interfaceSteven Luong1-0/+1
Missing an increment in the while loop. Hashes not stored in the array. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I603027f5a7305478f48a102ac8035ffde9102c53 (cherry picked from commit 0471cdbd3fe04a88a8b70b5f0eff0c378e19abf7)
2019-10-04session: Fix missing elt regrabNathan Skrzypczak1-0/+1
Type: fix Change-Id: Ie756c5477d989702e633aa0d42ca154ff32b4c9a Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com> (cherry picked from commit 19e52c96dcd5f523c2b97aee56cb2e7751d4690a)
2019-10-04ipsec: support 4o6 and 6o4 for tunnel protectNeale Ranns2-25/+31
Type: feature Change-Id: Ib2352ca4c7abf4645f21fa16aaaf27408890a2bf Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit b325983a4461dd806e86a31abc47533b09482157)
2019-10-04misc: add vnet classify filter set supportDave Barach8-51/+228
Type: feature Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I79b216d2499df143f53977e5b70382f6f887e0bc (cherry picked from commit f5667c3055dbd6755277f085c6778c2b1104aa6e)
2019-10-03session: allow transport cleanup in any stateFlorin Coras1-3/+2
Type: fix Third time's a charm Change-Id: I31555a35d2b51f49a93a2a213c28896b0cad4c09 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit b5a2f7056967630c2834b0b4bf03520d96806c3e)
2019-10-03session: fix io_evt mq lockingNathan Skrzypczak1-3/+2
Type: fix Change-Id: Iaa8045bba19cc305c84074668a20e1468d431b10 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com> (cherry picked from commit 35174b428b99978503332107a9f330d8b3478bd5)