summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2021-05-17virtio: add the checks for descriptors chain lenMohsin Kazmi1-0/+23
Type: fix virtio uses indirect descriptors for chain buffers. indirect descriptor chain is mapped on a vlib_buffer_t. Single descriptor is 16 bytes and vlib_buffer_t has 2048 bytes space. So maximum long chain can have 128 (=2048/16) indirect descriptors. This patch adds check to make sure descriptors chain len should not exceed 128. Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com> Change-Id: I060cfb7709568f42c9b5634527172690ce66a1a3
2021-05-16session: rpc for connects to mainFlorin Coras3-5/+88
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ifa47e1500e5cfb3c717f87b1d21131b9531c9005
2021-05-15lacp: coverity fix on null pointer dereferenceSteven Luong1-2/+2
Coverity complains on null pointer dereference. It is not likely to happen. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: Iab726a1e2d60725cec7ab0bbd2787b62e6393d33
2021-05-15session: fix coverity warningFlorin Coras1-1/+1
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I24484a5192d7e683507ed640f75fb37914c0efb0
2021-05-14tcp: remove ho lockFlorin Coras3-13/+0
Half-open sessions are allocated by main thread and cleaned up on main with timers. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I37f000920a45908b62b5501ae9d54a88a9e4c609
2021-05-14vlib: remove unused codeDamjan Marion2-127/+0
Type: refactor Change-Id: Ia5f670541dd43a4f6d731dda84b2d898195643fc Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-14vlib: pass node runtime to vlib_buffer_enqueue_to_thread()Damjan Marion17-40/+36
Mechanical change for patch following this one... Type: improvement Change-Id: Iee12f3a8851f35569e6c039494a94fc36e83d20f Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-14avf: free spinlock on txq removalDamjan Marion1-0/+2
Type: fix Change-Id: I8e9a907a227f82b870a945b94731dc3204c23ee1 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-14interface: fix converity in update_runtime_dataMohammed Hawari1-1/+1
Change-Id: I59eb41516b5e052109428ae70660ed49126c25bb Type: fix Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
2021-05-14interface: update tx queue runtime if vector size changesDamjan Marion1-1/+5
Fixes issue which causes crash in case when VPP only runs with main thread. Type: fix Change-Id: Ia0ca973bb7e7ff81f15b37764ae248e2502bdcec Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-14vcl: fix lookup listener assertliuyacan1-0/+6
The following timing may happen: 1. vpp accept new connection, send ACCEPTED to vcl, but vcl has not handle it 2. vcl unbind the listener, go into DISCONNECT state 3. vcl handle the ACCEPTED event Type: fix Signed-off-by: liuyacan <liuyacan@corp.netease.com> Change-Id: If9a96a153af38763db062df133c2fdcc04ceba9b
2021-05-14session: switch ct to vc and track half-opensFlorin Coras6-85/+225
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I7f9c4b9b6e523ab549087ad21724f34f08fca793
2021-05-14tls: switch dtls to vc and track half-opensFlorin Coras4-14/+132
Also adds support for half-open support transport migration. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Id04c194138956336f93246bbed0332a7030c67e2
2021-05-13lacp: Prohibiting bonding with remote having different key than 1st memberSteven Luong4-23/+42
After forming the bonding with 1st remote member, Subsequent member must have the same key in order to join the same bonding group. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I9ff6d6c083a5b6a26beedbd7181d5a120cb5710b
2021-05-13interface: fix tx queue runtime updateDamjan Marion1-0/+2
Type: fix Change-Id: I5ce7e57ae277de26af602fe786048bf21b8612f8 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-13tests: move test source to vpp/testDave Wallace91-55913/+0
- Generate copyright year and version instead of using hard-coded data Type: refactor Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I6058f5025323b3aa483f5df4a2c4371e27b5914e
2021-05-12avf: avoid eating our own tailDamjan Marion1-0/+3
This happens in case we are not able to refill ring with new buffers. Type: fix Change-Id: I727e55c5b8482d9b8aeb4a9933a9a755fe21e55f Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-12flow: fix vxlan vni convert bugChenmin Sun1-2/+2
This patch fixes a vxlan vni field conversion bug in flow api layer Type: fix Signed-off-by: Chenmin Sun <chenmin.sun@intel.com> Change-Id: I37b2ffb54792f48b390ff42da577db2c4869d253
2021-05-12tls: switch to vc service and track half-open sessionsFlorin Coras7-19/+78
Half-open tls sessions are now tracked by the app worker and are cleaned up only when tcp cleans up its half-open session, i.e., independent of when the established tls context is allocated. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: If5d594d7095192dd527daf4ea1358ffeccdfcc7a
2021-05-12session: return connect session handle to appFlorin Coras6-32/+36
App transports not supported for now. Will have to be updated individually. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I75cb6c4e1c5af008af72858a9ee573016812abd4
2021-05-12crypto: add chacha20-poly1305 support to ipsecmbFan Zhang1-0/+252
Type: feature This patch adds chacha20-poly1305 single and chained algorithm support to ipsecmb crypto engine. Signed-off-by: DariuszX Kazimierski <dariuszx.kazimierski@intel.com> Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Change-Id: If04ee0c8f985b07fd31dad1ce29000ec6f1733c5
2021-05-12session: support half-close connectionliuyacan15-6/+217
Some app(e.g. Envoy) may call shutdown() instead of close() when draining connection. Type: improvement Signed-off-by: liuyacan <liuyacan@corp.netease.com> Change-Id: I9543b9ca3caa87b10b134fd1fc4019124e41e4d2
2021-05-11ip: ensure ttl doesn't decrease to 0 when puntingAloys Augustin1-0/+2
Change-Id: I248ef12fd34ea2a1c383fbcc530a8ffeb31ba92b Type: fix Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
2021-05-11interface: tx queue infraDamjan Marion13-57/+503
Type: improvement Change-Id: I415b2f980de10ca3154d2c8677c24792453eccd0 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-11build: compiler flags handling cleanupDamjan Marion5-49/+49
Type: make Change-Id: I51f30edb91e09525ba116fe3941f2e43f9718da7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-11quic: alloc ctx on udp threadFlorin Coras1-9/+10
UDP sessions are allocated on first worker because main does not poll. Consequently, quic should also allocate connection on first, to avoid multiple migration events. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ice229a42c399e87150e0f6dd76e2e06ab271556c
2021-05-11vppinfra: Add missing %oNathan Skrzypczak1-0/+4
This is used in vppinfra/socket.c:495 Type: feature Change-Id: I89b409ae7abb01723108ae3e6c55bb1675db50ee Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-05-11vlib: exec cmd handle scripts with blank linesDave Barach1-3/+21
Type: fix Fixes: 2f96e7648b9b7d501088eddff7e4a761973e71f4 Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: Ia75c863850c0df978f61bfc0343a167d8636ed97
2021-05-10misc: fix crash in lawful intercept CLIhemant_mnkcg1-6/+6
Type: fix Signed-off-by: hemant_mnkcg <hemant@mnkcg.com> Change-Id: I097815617053dac09de7ad3092b3d3071770114f
2021-05-10session: use half-open sessions for vc establishmentFlorin Coras9-119/+126
Use half-open sessions to track virtual circuit connection establishment. These sesssions can only be allocated and freed by the thread that allocates half-open connections (main). Consequently, they can only be freed on half-open cleanup notifications from transports. Goal is to simplify state tracking within the session layer but it's also a first step towards allowing builtin apps to track and cleanup outstanding connects. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I8a535906d13eb7f8966deb82333839de80f8049f
2021-05-10dpdk: do not crash when failing to bring interface upBenoît Ganne1-5/+9
If dpdk device starts failed for some reason, we should not try to get stats and the interface must remain down. Type: fix Change-Id: I0079f89d3b43a9b47553991347da8ed4ce6ede8d Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-05-10svm: try chunk alloc only if enough space availableFlorin Coras1-1/+2
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I3c52dd783601d50e981f75bd05a7b95c03bb5c22
2021-05-10gso: fix the gro coalesced chain lenMohsin Kazmi1-1/+2
Type: fix Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com> Change-Id: I86b940384a6898d4cb04f3decf30996c94b43d07
2021-05-10api: fix crash in vl_msg_api_freewanghanlin1-1/+15
VPP crash when ASSERT in clib_mem_free. Type: fix Signed-off-by: wanghanlin <wanghanlin@corp.netease.com> Change-Id: Id06d833caab3385446528d62a6ed3bde38d57db0
2021-05-08vhost: low performance in interrupt mode in some casesSteven Luong1-35/+19
When vhost and another interface, say tap, are configured for interrupt mode, performance number may be very low from vhost. Further analysis discovers that when vhost posts an interrupt to the RX infra, there is a 10 msec delay in waking up its input routine. The delay is due to vhost posts the interrupt from the main thread which tries to wake up the worker thread. The fix is for vhost to move the posting interrupt call to the corresponding input worker thread by calling vnet_hw_if_set_rx_queue_file_index() to set it up. While at it, streamline the function vhost_user_kickfd_read_ready() since it will be called from the worker thread. Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I9beedcd33e1558c8335da4ee7fadc51c29ee4589
2021-05-08memif: Fix delete on errorNathan Skrzypczak1-8/+0
Type: fix Change-Id: I3cc09630cae999cc194a0eedb4d2cfee7a826b76 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-05-08avf: fix coverityMohammed Hawari1-7/+4
Change-Id: I54025eb0e4ee861b2b2fed554b006405cba38bb9 Signed-off-by: Mohammed Hawari <mohammed@hawari.fr> Type: fix Fixes: bd376a8ce8425f45b23074398949e8055de29280
2021-05-07dpdk: fix cryptodev session handlerFan Zhang1-0/+4
Type: fix This patch fixes the possible segmentation fault in DPDK cryptodev when deleting session. Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Change-Id: Ie81de09f7250eb5c1ed6ee471363137d8372fe27
2021-05-07session: connects seg manager is always firstFlorin Coras9-89/+32
By convention, connects segment manager will be first. Therefore it will be the one with the first segment wherein lies the app's message queue. Saves us the trouble of allocating it on first connect, if app started by listening, and we no longer need to track if it's assignable to a listener or if it can be removed. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Iba9a8ffaab618eeb41ec2144dcfee62d006dc7a2
2021-05-07avf: Fix cksum offload / ipsecNathan Skrzypczak1-1/+6
VNET_BUFFER_F_OFFLOAD means 'check 2nd cacheline' but we can still have TCP_CKSUM=0 & UDP_CKSUM=0 Type: fix Change-Id: I42b5974f6d34b777aa959c06c67619a5c83c5805 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-05-07vppinfra: add universal array mask_compare and compress funcsDamjan Marion9-143/+496
Type: improvement Change-Id: I6d812339f626ea630ad9354632d2f9506122d379 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-06build: add FORCE_ON option for multiarch variantsDamjan Marion3-4/+26
Type: make Change-Id: I37fb925a9cc2dfc21dd7874f4b20a6943b28efc8 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-06vcl: move tests to src/testsFlorin Coras1-872/+0
Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: If622dfcc6f98d90cac0487e6bb9eb8c0bb01cf85
2021-05-06stats: move vector_rate counters into providerOle Troan3-66/+96
Type: improvement Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: Iae1fb59a6dc9679c0fa0b87fa5232d551a7995a5
2021-05-06vlib: remove unused simple counters fieldsOle Troan1-6/+0
Type: improvement Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I46cfdcd02e5fda310367da17532cd2f355044811 Signed-off-by: Ole Troan <ot@cisco.com>
2021-05-06vcl: reduce iperf tests outputFlorin Coras1-8/+8
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ia6197e99ebc42367624da27387216dc4cdb3141b
2021-05-06vppinfra: fix testsDamjan Marion17-87/+78
Type: fix Change-Id: If59a66aae658dd35dbcb4987ab00c306b3c6e2e2 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-05-06vlib: rename vl_counter_t to vlib_error_desc_tOle Troan8-16/+14
Type: improvement Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I368b0410db2d633d3c52199c840e24d21952c1b4
2021-05-06stats: memory heap countersOle Troan7-94/+246
- Add counters for the main-heap - Add additional counters per heap: STAT_MEM_TOTAL STAT_MEM_USED, STAT_MEM_FREE, STAT_MEM_USED_MMAP, STAT_MEM_TOTAL_ALLOC, STAT_MEM_FREE_CHUNKS, STAT_MEM_RELEASABLE, The per-heap counters are organised as a two dimensional vector. total, used and free are directly available via symlinks. vpp_get_stats ls "^/mem/" /mem/stat segment /mem/stat segment/total /mem/stat segment/used /mem/stat segment/free /mem/main heap /mem/main heap/total /mem/main heap/used /mem/main heap/free vpp_get_stats dump "^/mem/main\ heap$" [0 @ 0]: 1073741776 packets /mem/main heap [1 @ 0]: 91586688 packets /mem/main heap [2 @ 0]: 982155088 packets /mem/main heap [3 @ 0]: 0 packets /mem/main heap [4 @ 0]: 1073741776 packets /mem/main heap [5 @ 0]: 433 packets /mem/main heap [6 @ 0]: 981708688 packets /mem/main heap Type: feature Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I36725dde3b4b3befd27a8b4d3ba931f2d3b627cc
2021-05-06pnat: coverity errorsOle Troan4-5/+13
Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: Ic38cfbdcab86172bad6ec6cb4c66c83f8deed64f Signed-off-by: Ole Troan <ot@cisco.com>