summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2019-09-25interface: Remove residual dpdk bonding codeSteven Luong5-18/+4
dpdk bonding code was removed in 19.08. However, there are still references to VNET_SW_INTERFACE_FLAG_BOND_SLAVE which was set by the already removed code. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I949a7281e6273f2733dd7532cc4a3bb4f3ce30de (cherry picked from commit 5ad541eeaa428c6a88c40e2088cdaabc0748c9df)
2019-09-25tcp: fix byte tracker samples flushFlorin Coras2-0/+14
Type: fix Change-Id: I3b4cb8fc17387693d6ad6cdef004ca99cd56bc23 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 92f190a802b6999ce68696032e556aa75171e1cc)
2019-09-25ipsec: Add 'detail' option to 'sh ipsec sa'Neale Ranns1-4/+8
Type: feature with detail option prints all details for all SAs Change-Id: Ic3c423c085dfc849cf9c3e18a6f624b82150d961 Signed-off-by: Neale Ranns <nranns@cisco.com> (cherry picked from commit 670027a50682b88c3082aad70072139ce87a0d52)
2019-09-25ip: reassembly: remove unnecessary codeKlement Sekera2-6/+0
Type: refactor Change-Id: I30cb324006c3c6ab88d01c044cf80fab3a34f13a Signed-off-by: Klement Sekera <ksekera@cisco.com> (cherry picked from commit 8e9e0eccb280619f10d287dad3f79541ade03adc)
2019-09-25ip: fix merge issueKlement Sekera1-2/+0
Signed-off-by: Klement Sekera <ksekera@cisco.com> Change-Id: Idd64b0b3eedb7179f6d316b66cea8160ad577990 Type: fix Fixes: 630ab5846bceddf8d663e9f488a2dc0378949827 Signed-off-by: Klement Sekera <ksekera@cisco.com> (cherry picked from commit 95e091b268212c4bc7153d1526fdffd3ce1d647a)
2019-09-25ip: reassembly: send packet out on correct workerKlement Sekera2-92/+287
Note which worker received fragment with offset zero and use this worker to send out the reassembled packet. Type: fix Change-Id: I1d3cee16788db3b230682525239c0100d51dc380 Signed-off-by: Klement Sekera <ksekera@cisco.com> (cherry picked from commit 630ab5846bceddf8d663e9f488a2dc0378949827)
2019-09-25vlib: fix null pointer crash on strncmpSteven Luong1-2/+2
Program received signal SIGSEGV, Segmentation fault. 0x00007ffff4b71de0 in __strncmp_sse42 () from /lib64/libc.so.6 (gdb) up up vm=0x7ffff6664d40 <vlib_global_main>, addr=0x7fffb4bec6d0, ids=0x7fffb31675f0 <avf_pci_device_ids>, handle=0x7fffb4bec594) at /usr/src/debug/vpp-20.01/src/vlib/linux/pci.c:1250 1250 if (strncmp ("vfio-pci", (char *) di->driver_name, 8) == 0) (gdb) p di p di $1 = (vlib_pci_device_info_t *) 0x7fffb6446164 (gdb) p di->driver_name p di->driver_name $2 = (u8 *) 0x0 (gdb) driver_name may be null. strncmp is not forgiving. Change to use C11 safeC version. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I1777a5966ceee7409d7bde86c30b14dc75534a5a (cherry picked from commit ab4899257a77edecfbf9a97cf67acc26a2133119)
2019-09-25lb: fix memcpy error issueYulong Pei1-7/+3
vl_api_prefix_t size is 21 byte, ip46_address_t size is 16 byte, only copy 16 byte of vl_api_prefix_t to ip46_address_t is not correct. Type:fix Change-Id: I35ede7836a0c878d39388b29b15d91bb08f87a07 Signed-off-by: Yulong Pei <yulong.pei@intel.com> (cherry picked from commit 71f36067ca923fa4eb10060d6f6878f5fa864673)
2019-09-24sr: fix sr_set_encap_source replyVratko Polak1-1/+1
Can we get a reply macro that would avoid such copypaste errors? Type: fix Change-Id: I753efb1d82fced668c27f2e44b0318bfd31c0a23 Signed-off-by: Vratko Polak <vrpolak@cisco.com> (cherry picked from commit 1096b46d9bfeb4f4c6c3bcd7b12b1d99c5da54a4)
2019-09-24hsa: move udp_echo to vpp_echoNathan Skrzypczak3-1262/+183
Type: refactor Change-Id: I9b8bc4e54bfae9fa3ed367d4a9676fb09c27fb2a Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com> (cherry picked from commit dee4c2e40333580a5a8817ed217807db48224399)
2019-09-24misc: missing ntohl for bond_slave's custom dumpSteven Luong1-2/+2
sw_if_index argument is u32 and it needs to be converted to host order for format in custom dump, a very highly sophisticated stuff. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: Ie6d49a17e4411df5d567dbb2a7c95993dceda31b (cherry picked from commit 58caa37dcac3cef95279f8b2c82082b1a2af6a62)
2019-09-24avf: fix init when num_rx_queues > num_tx_queuesDamjan Marion1-4/+4
Type: fix Fixes: ae91180 Change-Id: Id93b0f4d23ad7022e341e305bbd93ef2fff5787d Signed-off-by: Damjan Marion <damarion@cisco.com> (cherry picked from commit 017002ae357a05ca1ae1b7d8fbc7bbc8063c9e34)
2019-09-24tcp: add option for always on event loggingFlorin Coras8-185/+371
Type: feature Add option to always compile in debugging infra. Debug verbosity can be controlled via configuration updatable via cli. Compile time inclusion and configuration of event logging verbosity is still available in order to minimize event logging impact. Change-Id: I9d946efe9fa4204fdace1adb1d6588c97b5ae758 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit a436a42221280888acd09858c7353e694c359bca)
2019-09-24vcl: fix ldp_set_app_name overflowBenoît Ganne1-5/+2
In case of overflow, we null-terminate the parameter ('app_name') instead of ldp global name ('ldp->app_name'). Moreover, snprintf() always safely null-terminate the destination string even in case of overflow. Type: fix Fixes: 048b1d6ab7 Change-Id: I4d8b0e020a228e982b6699d652b341c5afe92993 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 747b3d8b0e045edb166738ecde99dcc951212988)
2019-09-23quic: fix rx_callback refactoringNathan Skrzypczak1-1/+1
* check_quic_client_connected might allocate ctx and invalidate our pointer Type: fix Change-Id: I885ca5a1a6db9a7765c9047a7df9cdf66c94f1cb Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com> (cherry picked from commit 1682b51c416561b083d84194d49ff617e070eb47)
2019-09-23hsa: move tcp_echo to vpp_echoNathan Skrzypczak3-1420/+144
Type: refactor Change-Id: Ic23859a1686eff2ae4d08a86b69ff4813498459e Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com> (cherry picked from commit a8462fbca3bdfa5da602f7787f83bbdf8da64d5d)
2019-09-23vppapigen: remove python2 supportPaul Vinciguerra1-28/+30
vppapigen has been running under python3 for months. Remove the python2 conditional code. In case of an error, explicitly log and return non-0. Type: refactor Change-Id: I20a73e0f2cb875aab6441959a85a35e88c9f8250 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com> (cherry picked from commit 2cd3cc8a605a062c7900dbcc3fad53d04723c298)
2019-09-21tcp: forward conn resets through tcp-outputFlorin Coras1-32/+20
Type: refactor Change-Id: I5718853d89ebeae9d66be975a803a3674bec5986 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit df36f4963f1a590ce9a02f048507c3d4590580ae)
2019-09-21vppinfra: Update "show cpu" output for AArch64 chipsNitin Saxena1-15/+18
- Allow "Microarch model(family)" row to show PASS revison as either string (like A0, B0) or number (like 1.0, 2.0). - Fix part number for Marvell CN96XX Type: refactor Change-Id: Ie01a3960c4e5e481be354dc8bb60f744e5c65737 Signed-off-by: Nitin Saxena <nsaxena@marvell.com> (cherry picked from commit c9122f97398b11f8be0256901a0cbd83dc3b6511)
2019-09-21dpdk: fix ipsec coverity warningMatthew Smith1-2/+4
Type: fix Fixes: 5025d40a1134272ab57c3c3f10311e31a65cd63c Update the expression for a conditional block which should be executed when an encrypted packet will be sent via IPv6. Coverity was complaining that a NULL pointer could be dereferenced. It is unclear whether that ever would have actually happened, but the updated expression should quell the warning and should more accurately detect whether the block for IPv6 should be executed. Change-Id: I731cad1f982e8f55bd44e6e05e98eff96f1957bb Signed-off-by: Matthew Smith <mgsmith@netgate.com> (cherry picked from commit c458f5c09a21cc905aa1b53eda30736e52426418)
2019-09-21vlib: fix vlib_buffer_main_init_numa_node memory leak.Guanghua Zhang1-3/+8
Type: fix Signed-off-by: Guanghua Zhang <ghzhang@fiberhome.com> Change-Id: I8252ed2555f5af6db2f12dc7c30e41cc1ec7dde0 (cherry picked from commit 785daf4f847a786ba618e3017752567f20f0be1c)
2019-09-21build: fix vpp compilation failure on ThunderX2 and AmpJianlin Lv1-1/+1
fix compile issue that caused by enabling "-mtune=thunderx2t99" flag during compilation, such as "/opt/vpp-agent/dev/vpp/src/vnet/interface_stats.c:164:1: internal compiler error: Segmentation fault" Type: fix Change-Id: Iaf9f80a6c203a7e5b6a40523f14a62bb37091c92 Signed-off-by: Jianlin Lv <Jianlin.Lv@arm.com> (cherry picked from commit 416e32cf9292b899cbed28ec29836517eb942206)
2019-09-21ip: leverage existing vlib_buffer_advanceZhiyong Yang1-6/+3
The function ip4_rewrite_inline_with_gso can leverage the existing vlib_buffer_advance to simplify code. Type: fix Change-Id: I25d943dc78aba2f67654385cf3f693eb01e0210e Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com> (cherry picked from commit a6659214aa7be7fe9fa04fbdc744affaaa8324ec)
2019-09-21nsh: rewrite nsh_output_inlineZhiyong Yang1-32/+30
Type: style Change-Id: I0c870eddb427efa26cd5b52daf12b13c3927976a Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com> (cherry picked from commit e16f6a77eb18f1e9b61f987089c82fe38bc317b2)
2019-09-21rdma: add support for MAC changesBenoît Ganne2-1/+35
Type: feature Change-Id: I5803b52d12e56f2ccc1316e89ece6f1c5898810a Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 0dcafcc505dccb9243c90c57a20295d4f0afce29)
2019-09-21dpdk: add TSO support in dpdk plugin.Chenmin Sun3-1/+44
Type: feature You can enable tso in starup.conf like this: dev 0000:86:00.0{ tso on } TSO is disabled by default. Change-Id: Ifdbaf5322f768c384aa54e532d7bf45e810ca01c Signed-off-by: Chenmin Sun <chenmin.sun@intel.com> (cherry picked from commit de5ed58fdb72536ed928e12990a08104e1f89f51)
2019-09-21dpdk: QAT devices update, add c4xxx and xeon d15xxJim Thompson1-1/+2
Type: feature Change-Id: I21f8f4563f5545a684b2666f7410847e0f7bc403 Signed-off-by: Jim Thompson <jim@netgate.com> (cherry picked from commit 4d843b9940a8fbcd0b54c8a66916b9ba66e4f2c9)
2019-09-21rdma: add support for input feature arcsBenoît Ganne1-29/+35
Input feature arcs enable functions such as l2patch or bonding. Type: feature Change-Id: Ie333c9b8f7ea20f8a3a409a9a06367807e215a57 Signed-off-by: Benoît Ganne <bganne@cisco.com> (cherry picked from commit 74eba446b1e71f7fe5bac29cf30d4363a9b8b0cd)
2019-09-20session: add explicit reset apiFlorin Coras6-6/+72
Type: feature This can be used to forcefully close a session. It's only available to builtin applications for now. Transports must support the reset api otherwise normal close is used. Change-Id: I5e6d681cbc4c8045385e293e0e9d86fa2bf45849 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit dfb3b8771292e4c863ca266856aa2b5eb7cc7518)
2019-09-20tcp: set cc_algo on connection allocFlorin Coras3-6/+19
Type: feature Change-Id: Ie00329b11e26cab5db64b9c006171d283854c8ef Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit 12f6936cd8f69f17820ef749515fcf4d50001c60)
2019-09-20tcp: allow cc algos to set pacing rateFlorin Coras2-8/+15
Type: feature Change-Id: Ie7f0f5d2a476d401ede567e422abb953b2bb4a78 Signed-off-by: Florin Coras <fcoras@cisco.com> (cherry picked from commit d206724e78d99aee5d91d43fb0832d51d70eb57a)
2019-09-20vppapigen: fix missing vla check for union classOle Troan2-48/+111
Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: Ie775cf3469d761847ac39cf0d80a3ec6463b7928 (cherry picked from commit d5a78a5310ff25c0c34ce5773acd8211d48f59f6) Signed-off-by: Ole Troan <ot@cisco.com>
2019-09-20bonding lacp: deleting virtual interface which was enslaved may cause crashSteven Luong5-46/+66
Virtual interfaces may be part of the bonding like physical interfaces. The difference is virtual interfaces may disappear dynamically. As an example, the following CLI sequence may crash the debug image create vhost-user socket /tmp/sock1 create bond mode lacp bond add BondEthernet0 VirtualEthernet0/0/0 delete vhost-user VirtualEhernet0/0/0 Notice the virtual interface is deleted without first doing bond delete. The proper order is to first remove the slave interface from the bond prior to deleting the virtual interface as shown below. But we should handle it anyway. create vhost-user socket /tmp/sock1 create bond mode lacp bond add BondEthernet0 VirtualEthernet0/0/0 bond del VirtualEthernet0/0/0 <----- delete vhost-user VirtualEhernet0/0/0 The fix is to register for VNET_SW_INTERFACE_ADD_DEL_FUNCTION and remove the slave interface from the bond if the to-be-deleted interface is part of the bond. We check the interface that it is actually up before we send the lacp pdu. Up means both hw and sw admin up. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: If4d2da074338b16aab0df54e00d719e55c45221a (cherry picked from commit bac326cb7c5f8856786ca046df8cfa3be9f53926)
2019-09-20devices: vhost-user crashes displaying show trace for deleted interfaceSteven Luong1-6/+10
After the trace is collected and if the interface is then deleted, show trace may crash for the debug image. This is due to the additional check in pool_elt_at_index() to make sure that the block is not free. The fix is to do the check in vhost format trace and return "interface deleted" Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I0744f913ba6146609663443f408d784067880f93 (cherry picked from commit 5cd987dda679fe50b9cd7a834bb9162db39ade78)
2019-09-20hsa: Refactor quic_echo to allow other protocolsNathan Skrzypczak10-2324/+2886
Type: refactor Change-Id: Iaef9091e1d057110530255e644fad1c298418966 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2019-09-20quic: quic_app_rx_callback refactor.Mathias Raoul1-117/+167
Add quic_process_one_rx_packet() function Type: refactor Change-Id: Iecaec3f7fed9f95a25ea55d0251626beb79181fd Signed-off-by: Mathias Raoul <mathias.raoul@gmail.com> (cherry picked from commit f85770c4a190babdb47cb1cdc87467eaccac1f0b)
2019-09-19misc: fix pcap rx/tx status commandDave Barach1-1/+1
Type: fix Ticket: VPP-1775 Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I48a1c385ccfabca84dfb61aac526c7f67d9822d3
2019-09-19ipsec: fix missed IPSEC_INTEG_ALG_MD5_96Dmitry Vakhrushev1-0/+5
This algorithm was missed in last improvements. Type:fix Signed-off-by: Dmitry Vakhrushev <dmitry@netgate.com> Change-Id: Ib818cbdcdd1a6f298e8b0086dac4189cc201baa3 (cherry picked from commit 77cc14a2b29a65073539e6e3f4683a380875b3dc)
2019-09-19dpdk: ipsec tunnel support for ip6-in-ip4Matthew G Smith2-23/+10
Type: feature If an attempt was made to send an IPv6 packet over an IPv4 tunnel, the DPDK esp_encrypt did not complete setting up the crypto operation for a buffer, but still queued the crypto operations that were allocated. This results in a SEGV when attempting to dequeue them in dpdk-crypto-input. Allow IPv6 packets to be sent over a v4 tunnel when using the DPDK plugin esp crypto nodes. Change-Id: Ic9a4cd69b7fc06a17ab2f64ae806ec2ceacfef27 Signed-off-by: Matthew Smith <mgsmith@netgate.com> (cherry picked from commit 5025d40a1134272ab57c3c3f10311e31a65cd63c)
2019-09-19stats: refactor header filesDave Barach5-82/+104
Performant stat segment scraping involves caching the results of stat_segment_ls (...) and directly fishing counter data from the shared-memory segment. To do that, we need to publish several things previously hidden, declared in stat_client.c: o stat_client_main_t typedef o stat_segment_access_t typedef o stat_segment_access_start inline function o stat_segment_access_end inline function Type: refactor Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I3175e3d1f1fd8ea816336a584565179d1972115c (cherry picked from commit 531969ef614bdc15c45dae0f1b5e90afaf86eb7b)
2019-09-19gbp: add local l3out redirect to local SEP unit testBenoît Ganne1-3/+36
Type: test Change-Id: Ia6dad86d02f6f665a3e6960812b2527eaabb65f1 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-09-18ip: allow addrs from the same prefix on intfMatthew Smith4-101/+396
Type: feature Adding a prefix to an interface was not permitted if it overlapped with another prefix on an interface which used the same FIB. Loosen the restriction. Allow 2 or more addresses from the same prefix on a single interface. Reference count the prefix to figure out when a glean/connected route for the prefix needs to be added or removed. Added unit tests to check that the route is only removed when all addresses in the prefix are removed from the interface. Change-Id: I1a962ecb5e1ee65fc6d41f98a4cc097a51a55321 Signed-off-by: Matthew Smith <mgsmith@netgate.com> (cherry picked from commit 6c92f5babdc3c52cf343509fc9cf9d8a9a3df390)
2019-09-18memif: always enable zero-copy when creating memif using APIJakub Grajciar1-0/+3
Type: fix Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: I823b6297e1d2bdd438633ec7b877960e6d8423fa (cherry picked from commit 63882357549a39c7be4b23b48418b8febb5b0e12)
2019-09-12api: split vl_api_prefix into twoOle Troan13-45/+240
One type for address with prefix and one type for prefix. Ticket: VPP-1769 Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: Icfec51d9b7d5cde1d69fbecdd97498688ab7b295 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2019-09-10misc: clean up "pcap [rx|tx] trace" debug CLIDave Barach3-168/+162
Separate debug CLI arg parsing from the underlying action function. Fixes a number of subtle ordering dependencies, and will allow us to add a binary API to control the feature at some point in the future. Type: refactor Ticket: VPP-1770 Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: Id0dbeda06dad20e756c941c691e2088ce3c50ec7 (cherry picked from commit b97641c79f4aaf0069268c550f263167ddea2b34)
2019-09-09dpdk: initialize rte_mbuf during mempool dequeueDamjan Marion2-1/+47
In some cases it may happen that buffer is allocated by DPDK, and freed by VPP native code. In such cases dpdk metadata is not reset, so we need to do that during mempool dequeue. Template approach is taken to reduce cost of that operation. Type: fix Fixes: 910d369 Change-Id: Ic239007cfc8fbceb965021c56963cda9d53f63be Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-09-09dpdk: fix extended statsFilip Tehlar1-1/+1
Extended stats are not displayed due to incorrect condition. Type: fix Change-Id: Ie04664e6274137462dce832bf7ee06204cd77be5 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-09-09vlib: clean up the "pcap dispatch trace" debug CLIDave Barach3-136/+186
Separate debug CLI arg parsing from the underlying action function. Fixes a number of subtle ordering dependencies, and will allow us to add a binary API to control the feature at some point in the future. Type: refactor Ticket: VPP-1762 Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I1240fe3f61a0acf5ee9faed60d6ad3386e72e569 (cherry picked from commit e5948fb49a6eeaf437323cc1043a350cd33bcd47)
2019-09-09api: enforce vla is last and fixed string typeOle Troan20-256/+260
Enforce that variable length fields are the last element of API messages. Add a 'fixed' version of string type, since dealing with multiple variable length strings turned out too painful for the C language bindings. The string type is now: { string name[64]; // NUL terminated C-string. Essentially decays to u8 name[64] string name[]; // Variable length string with embedded len field (vl_api_string_t) }; The latter notation could be made available to other types as well. e.g. { vl_api_address_t addresses[]; } instead of { u32 n_addr; vl_api_address_t addresses[n_addr]; }; Type: fix Change-Id: I18fa17ef47227633752ab50453e8d20a652a9f9b Signed-off-by: Ole Troan <ot@cisco.com> (cherry picked from commit e5ff5a36dd126ee57dca4e0b03da2f7704e0a4f5) Signed-off-by: Ole Troan <ot@cisco.com>
2019-09-07ip: fix udp/tcp checksum corner casesDave Barach12-5/+1035
When checksumming chained buffers with odd lengths: insert a NULL byte, or the calculation fails. Type: fix Signed-off-by: Dave Barach <dave@barachs.net> Signed-off-by: John Lo <loj@cisco.com> Change-Id: I380f7c42897bdb28c8c29aa1c4cdaaa849cc9ecc (cherry picked from commit c4abafd83df38051765352785b146277734701f4)