summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2021-02-04vlib: increase the stats epoch only when necessaryMiklos Tirpak4-16/+335
When the counter vectors are validated and they are already long enough to fit the given index in memory, there is no need to increase the stats segment epoch. In this case, the counter vectors do not change as a result of the validation. This optimization is necessary for the case when the configuration is changed at multiple thousands per second rate. The counter vectors grow at the beginning and their size stabilizes after a while. Without this improvement, it can still take several seconds for a stats reader to succeed. Type: improvement Signed-off-by: Miklos Tirpak <miklos.tirpak@gmail.com> Change-Id: I5a6c30255832716a1460018d0bd0f63031de102b
2021-02-03vxlan: fix interface namingRay Kinsella1-6/+8
Previous commit broke naming of vxlan interfaces. Type:fix Fixes:a4b0541f6 Signed-off-by: Ray Kinsella <mdr@ashroe.eu> Change-Id: I5e304821be73547b4e47c35ad9632283f153830f
2021-02-03vppapigen: Support an 'autoendian' keyword for message definitions inNeale Ranns4-7/+12
.api files Type: feature Make the auto-endian nature explicit, rather than hidden in the x_api.c file. Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: Ibe647117ceeaf6f99a38a96576a5a41a3cbb1615
2021-02-03vppapigen: fix enum typesPaul Vinciguerra1-2/+11
enums can return signed or unsigned integers enumflags are unsigned integers Type: fix Change-Id: Iafc8f8f09c96679c5983d2cb807699fcf90ca0d7 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2021-02-02tests: verify policer stats in punt testsBrian Russell3-0/+72
Add verification of policer stats in the IP[46] punt paths. Type: test Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: I8b1035afc2d3abe4e98bdb3a76e87a0dd131ef4b
2021-02-02policer: add countersBrian Russell4-8/+58
Add counters to the policer against each of the 3 possible results: conform, exceed and violate. Type: improvement Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: Ia98a2f5655df6873259197d6bbf0ff2709b7d60e
2021-02-01vcl: remove verbose output from vcl iperf testsFlorin Coras1-8/+8
For high throughput tests the amount of debug output can be considerable. Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Icc9f2092918ebca432502af960da11b154818a02
2021-02-01quic: clean setup_cipher functionMathias Raoul1-10/+11
Type: fix Change-Id: I02e473440a8732ddfb1a13ad6552779adaa67f60 Signed-off-by: Mathias Raoul <mathias.raoul@gmail.com>
2021-02-01misc: remove duplicated gbp entry in maintainersVratko Polak1-5/+0
Type: style Change-Id: Iba79915b78daf6eec6affa4efce66d3670d3f3c0 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-01misc: mark vnet and plugin in maintainersVratko Polak1-8/+8
Type: style Change-Id: Ibbc33d92e3663aea0b33a2f961a9ceebc975b51c Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-01misc: use tab as separator in maintainers fileVratko Polak1-6/+6
Type: style Change-Id: I9bf61b0b9fd35941fda52c0eef99c7c95db9cba8 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-01vppinfra: add defines for bihash add and deletePaul Atkins2-1/+4
When calling the bihash_add_del... functions some callers add a comment beside the value to indicate this is the is_add param. Make the code easier to read by adding defines for add and delete that the callers can use instead of having to use 0 or 1. Type: improvement Signed-off-by: Paul Atkins <patkins@graphiant.com> Change-Id: Iab5f7c8e8df12ac62fc7e726ca1798622dcdb42c
2021-02-01misc: Volunteer as maintainer for the policerNeale Ranns1-1/+1
Type: improvement I volunteer myself as maintainer of the policer code. Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: Ia843f031372cf2ca834e884ed2ba4774bf7fcd21
2021-02-01misc: Remove duplicate "classify" entry in MAINTAINER listNeale Ranns1-5/+0
Type: fix Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: I5466838353f3286941333f752f9ef6d336db0de4
2021-02-01docs: fix up the markdownAndrew Yourtchenko3-1/+4
Type: docs Change-Id: Ia541839e1f1ceddfae4579dece43b9cc820702e2 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> (cherry picked from commit de569048a504cf211d80b86882e6781684301790)
2021-02-01misc: 21.01 Release NotesAndrew Yourtchenko1-1/+663
Change-Id: I8fa48e631b9405f2882ea975927c42dbbd32cf1f Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Signed-off-by: Ray Kinsella <mdr@ashroe.eu> Type: docs (cherry picked from commit 3d2d96e5547484290c9368bac0a420afa8c4c068)
2021-02-01misc: Update my email address in MAINTAINERSNeale Ranns1-26/+26
Type: fix Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: I87cc517535f8d8dd5bf786bb8e00863b004df808
2021-02-01fib: Changes to interpose sourceNeale Ranns6-22/+227
Type: improvement 1) stack the interpose on any path-extensions (e.g. labels) from the next best source 2) allow more than 1 source to contribute a DPO for a given prefix Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: Idc2fbb36cfbd2387081765d8af0f1fbe61612160
2021-02-01tap: fix the interrupt handlingMohsin Kazmi1-3/+4
Type: fix Interrupt are suppressed from kernel on tx path. Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com> Change-Id: I9f39f343b7e16bad09910766adf0b09654721f67
2021-01-29interface: fix interface name overflow in logsBenoît Ganne1-9/+9
hi->name is a non-NULL-terminated vector. Type: fix Change-Id: I1a9f128f24f137b43cb47169677cc4288043fbd7 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-01-29misc: fix a trunccation on vhost dumpSteven Luong1-6/+5
feature is u64. We need to print it with %llx and enough precision to avoid truncation Type: fix Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I9f5dd523400473b4881b01b8e6cecf439a8060d9
2021-01-29vlib: acquire barrier before exit callKommula Shiva Shankar1-0/+2
Type: fix A plugin exit callback function registered via VLIB_MAIN_LOOP_EXIT_FUNCTION() is called without stopping worker cores doing data path processing. Following error is observed while exiting vpp. error log: vppctl# q 0: /vpp_master/src/vnet/interface.c:1058 (vnet_delete_hw_interface) assertion `ii == 0 || this_vlib_main->parked_at_barrier == 1' fails This patch calls all exit() functions after acquiring barrier Signed-off-by: Kommula Shiva Shankar <kshankar@marvell.com> Reviewed-by: Nitin Saxena <nsaxena@marvell.com> Change-Id: I2fd565f0afaa62cb0fb0389922f49e4d382f028c
2021-01-28vcl: support set/get vrf attributeFlorin Coras3-0/+24
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I011faa52939d44bdc90de69ad381dc1eea8c8eb3
2021-01-28vcl: fix select want deq ntf for ct sessionsFlorin Coras1-32/+35
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I2d008a12da6c6e68ad8955a638b44d09e4febd8d
2021-01-28svm vcl: add helper fn that discovers mqs in segmentFlorin Coras7-9/+80
Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I1b083ee793a7cf91b1001bfe88353fa5e6515c42
2021-01-28vcl: honor time wait in eventfd epoll waitFlorin Coras1-11/+35
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I4bfdeb4bfbdcf333cfd4047a80edd04e35a371fc
2021-01-28cnat: Fix session with deleted trNathan Skrzypczak3-9/+3
Type: fix When a translation gets deleted, hiting a session pointing to it sefaults. We're better off directly storing the next node index. Change-Id: I4f0716d775202b4ecf54d6cdb827bbeebd23056c Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-01-28cnat: Fix throttle hash & cleanupNathan Skrzypczak5-106/+67
Type: fix This fixes two issues : - We used a hash to throttle RPC for adding fib entries, but as we rely on a refcount, we cannot accept loosing an entry, which could happen in case of a collision. - On client cleanup we weren't freeing the fib entry correctly which resulted in crashes when recreating an entry. Added a test that ensures proper cleanup Change-Id: Ie6660b0b02241f75092737410ae2299f8710d6b9 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2021-01-28tests: add ip6 punt policer handoff testBrian Russell1-1/+52
Add a test for ip6 punt policer thread handoff. A child class is created that uses common punt test setup but is configured to have 2 worker threads. Type: test Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: I65c44f5d79455129accd7cf405c15920a5a9b678
2021-01-28tests: move ip6 punt setup to its own classBrian Russell1-23/+24
Move interface and packet setup for the ip6 punt test to its own class so that child classes can be created that use it. Type: test Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: I14acedc1bcd12cb320835a36833cd32303c5f793
2021-01-28tests: add ip4 punt policer handoff testBrian Russell1-1/+51
Add a test for ip4 punt policer thread handoff. A child class is created that uses common punt test setup but is configured to have 2 worker threads. Type: test Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: I34defee85bc5636f9355d0b9aaa007bfaf5e001e
2021-01-28tests: move ip4 punt setup to its own classBrian Russell1-28/+29
Move interface and packet setup for the ip4 punt test to its own class so that child classes can be created that use it. Type: test Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: I1a976e8fc0e8a44a86fe923a3ae093fe0c9057a8
2021-01-28ip: do policer thread handoff from punt policersBrian Russell3-51/+130
Pass packets arriving at the ip[46] punt policer nodes to punt policer handoff nodes if the worker thread they arrive on is not the same one configured in the policer. Initially, the policer will be tied to the worker thread that it first received a packet on. This will be expanded in future to be a configuration API option. Type: improvement Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: Ic39d936084c354af1859ad3d946da6cd0f6e34d9
2021-01-28policer: add policer handoffBrian Russell2-0/+81
Add thread handoff for packets being policed. Note that the handoff currently requires the policer index to be passed in. This is suitable for use in the ip[46] punt paths where each policer node will only ever use a single policer. For the more general case, this will be expanded in future to use a policer index stored in packet metadata. Type: improvement Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: I85a0ecbcfb025f8844e763224cd3de1561249aca
2021-01-28ip: add frame queues to punt policer nodesBrian Russell2-0/+10
The policer is not thread safe. In order that handoff could be performed, add a frame queue to each of the punt policer nodes. Type: improvement Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: Iee50267ee7e36f0e6c95b9b43bf651648198b834
2021-01-28policer: add thread index to policerBrian Russell2-3/+8
Add a thread index field to the policer structure. The policer is not thread safe. The thread index will be used to tie it to one worker thread and other workers can use thread handoff. Type: improvement Signed-off-by: Brian Russell <brian@graphiant.com> Change-Id: I650e983a9ed800bf660d6f06368717484c4a83bf
2021-01-28ip: Router ID included in flow hashNeale Ranns12-29/+122
Type: feature A device/router needs to have a unique ID which is included in the flow has so that flows are not polarised through the network, i.e. each deice in the network chooses the same nth link for the same flow. Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: I963e03674adbb085902b4084fdc4886b88f5734c
2021-01-28crypto-openssl: fix iv size for AES CTRBenoît Ganne1-68/+69
Type: fix Change-Id: I79258a95cfb75587685dffae671255063f57cbef Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-01-28build: do not _FORTIFY_SOURCE in debug modeMohammed Hawari5-11/+10
When compiling in -O0, the glibc feature.h ignores _FORTIFY_SOURCE and, in some distributions, throws a #warning, which fails the build. This patch removes -D_FORTIFY_SOURCE in all debug configurations. Change-Id: Ic30229c038353e49ff9419779e082a7083c1ea5f Type: fix Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
2021-01-27Change unformat_init_string API in doc to match codehemant_mnkcg1-1/+2
Signed-off-by: hemant_mnkcg <hemant@mnkcg.com> Change-Id: I4ec487054f928d52fe06d530df095b30edf66ae5
2021-01-27vhost: vhost interface hardware address not setSteven Luong3-6/+9
The check args->hwaddr is always true and it always copies the mac address from args->hwaddr even though none was set. Check args->use_custom_mac instead. Type: fix Fixes: gerrit 29970 Signed-off-by: Steven Luong <sluong@cisco.com> Change-Id: I0c51bf1ea79b02c4fbdc3c52e694f186bdd96600
2021-01-27ikev2: add per SA statsFilip Tehlar7-15/+68
Type: feature Change-Id: Ic502d806410ea3c8f3f1eac70b694114ccb053bf Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2021-01-26session: clear ct fifo flag prior to notificationFlorin Coras1-6/+7
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I6db15780d87426eee852aa020c50cbdf45dc1f95
2021-01-26interface: remove vnet_device_input_runtime_tMohammed Hawari7-432/+14
Change-Id: I85a463b4ca15baf11e3eb70189f5190ba2585170 Type: refactor Signed-off-by: Mohammed Hawari <mohammed@hawari.fr>
2021-01-26misc: fix snap image buildDave Barach3-5/+92
Clean up snapcraft.yaml bit rot, switch to Ubuntu 20.04, add README.md Type: improvement Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I2e0d3925cf43541e70b59083f8c91af539aa34e6
2021-01-25svm: add custom q implementation for mqFlorin Coras12-121/+313
Add separate queue implementation for the message queue as it's custom tailored for fifo segments as opposed to binary api. Also move eventfds to the private data structures. Type: refactor Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I6df0c824ecd94c7904516373f92a9fffc6b04736
2021-01-25vlib: add show trace limit warning at the end of output tooBenoît Ganne1-2/+4
Users tend to miss the warning too often, add it to the end of the output in hope it would be easier to catch. Type: improvement Change-Id: I264df7e3b6ab1ffb1a383807f4444d9cbaf40999 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-01-25crypto-ipsecmb: more explicit errors reportingBenoît Ganne1-4/+24
Use error counters related to ipsec-mb return codes instead of 'bad-hmac' only. Type: improvement Change-Id: I9329da300a70d76b4d4ab30fa45f0a2a85d6519b Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-01-25vlib: startup multi-arch variant configuration fix for interfacesRadu Nicolau5-8/+69
Propagate the multi-arch variant selection to interfaces. Type: fix Signed-off-by: Radu Nicolau <radu.nicolau@intel.com> Change-Id: I99c4a7896f172f0d14d2ded22a27383825529a7d
2021-01-24svm: use standard function to reset stale mutexBenoît Ganne1-2/+7
Avoid accessing the private data structure of mutexes which is implementation-dependent, eg. musl is different from glibc. Type: improvement Change-Id: I20ec0c1c9faef0749d89a1969cd2430c80ac04b3 Signed-off-by: Benoît Ganne <bganne@cisco.com>