aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2019-04-07GBP: coverity uninitialised variable warningNeale Ranns1-1/+1
Change-Id: Ic6e23f497fd91dcb1441f9f4d88a182712e69d3f Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-07crypto: add support for AEAD and AES-GCMDamjan Marion21-368/+760
Change-Id: Iff6f81a49b9cff5522fbb4914d47472423eac5db Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-07http_server: add timer wheel for session cleanupFlorin Coras1-29/+141
Change-Id: I494a6a7f4818a224376ec9150cff3872a3aec659 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-07crypto: coverity issuesDamjan Marion3-16/+28
Change-Id: I9db1b74097c9df587b9265b14a969d347bcb731a Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-06Pipe: fix double count on TX (TX counting is done in interface-output)Neale Ranns1-11/+1
Change-Id: I550313a36ae02eb3faa2f1a5e3614f55275a00cf Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-06gbp: Add gbp bd flags unit testMohsin Kazmi1-0/+6
Change-Id: I5b18cb84bec88f5514cacd2df61b5ce3c70abd77 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-04-06Doxygen: clean up vec.hDave Wallace1-8/+4
Change-Id: I2294982e6df41a13e61783e18f947da0bdd4b499 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2019-04-06quic: support addition of fifo segmentsFlorin Coras1-1/+2
Change-Id: I8cb03ee832e77d2b21d47aa7a44579c283fb1054 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-05make the output of "show api dump file <filename> compare-current" ↵Andrew Yourtchenko1-5/+9
doxygen-friendly The current output of the API diff requires some massaging to appear like a table in the docs generated by doxygen. This change eliminates this need. Change-Id: Ic9269a0e5e232e4d01a0695561e4f90eee287327 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-04-05quic: update app ns on connectFlorin Coras1-0/+1
Change-Id: I0aa220b1f5a72d8bbc6d147830766790d7f6d9bf Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-05crypto: fix init dependencyFilip Tehlar1-1/+2
Change-Id: Ie8dcd9fa0d0487b146eaa62113a5ee06bd3e7d3b Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-04-05rdma: more batching, compile rdma-core in release modeBenoît Ganne3-101/+299
rx: add batching for WC processing and release tx: improve batching for WC submission and processing rdma-core: compile in release mode to remove assert() Change-Id: I5fb8736db36b50f8b758cd688100477b67e72d80 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-04-05session: fix app name formattingFlorin Coras1-2/+2
Change-Id: Iea88ce5f6628e131e507ba45a3dbb2de7e6c1498 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-05fix pcap_trace cli output issueJack Xu1-2/+4
Change-Id: Ia2be56e198c960788430705b356170f8cc12c450 Signed-off-by: Jack Xu <jack.c.xu@ericsson.com>
2019-04-05vlib: fix "foo_msg" and "foo_msg_reply" in API message table triggering the ↵Andrew Yourtchenko1-2/+2
"defininion changed" output strncmp() succeeds if the i+1th message is "foo_reply", because the comparison terminates early after "foo" - which triggers the "definition changed" rather than "only in ..." message. Fix also the case where i+1th element does not exist. Change-Id: I127136410491d9dd102e160fd831fcf6f0bd3a9f Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-04-05IPSEC: punt reasons; SPI=0, no-tunnelNeale Ranns5-13/+155
Change-Id: If76992e283a27fa193a6865257ab3aa764066e48 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-05tcp: do not delete session on establish popFlorin Coras5-31/+59
Also: - force reset if wait close pops in fin-wait-1 with unsent data - adds more event logging. Change-Id: I4ddada046214fa71e17514cdec57b3026f84a283 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-04ldp: ignore TCP_CORK socket optionFlorin Coras1-0/+1
Change-Id: Iffc3d2fbb478d5cd228959f4f2653d0508887489 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-04session: fix http server rpc to mainFlorin Coras1-8/+9
Change-Id: I3e3820da5a9de97070bceecd3ea53b5351654319 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-04tcp: properly validate acks between snd_nxt and una_maxFlorin Coras1-2/+4
Change-Id: I37af3cb5fe3fe8556acbf8350f88663dca9ca8a9 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-04ipsec: trunc_size -> icv_sizeDamjan Marion9-15/+15
Change-Id: Idb661261c2191adda963a7815822fd7a27a9e7a0 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-04crypto: pass multiple ops to handlerDamjan Marion2-9/+44
Change-Id: I438ef1f50d83560ecc608f898cfc61d7f51e1724 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-04GBP: Counters per-contractNeale Ranns4-13/+62
Change-Id: I28bb9e3d3ea3a99a9e24801ef5241a0099186108 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-04tcp: shorten wait in fin-wait-1 with fin rcvdFlorin Coras3-9/+18
Change-Id: Ifddc32ab3da0e691ac3df74ff26e19f6fa00fef7 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-04Add crypto_ia32 pluginDamjan Marion5-0/+632
Currently this plugin provies AES CBC optimized code. Encryption code supports parallel encryption of 4 buffers with different size and key which improves performance 4x compared to standard serialized aproach. On Skylake Server measured performance is around 0.71 clocks/byte with 256 buffers with size in range between 7000 and 8000 bytes. Measured performance includes overhead of processing crypto ops. Change-Id: I5ec2afee708fcdf16a4234926534dd64ff1155c3 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-04gbp: Add bd flagsMohsin Kazmi4-11/+38
Add flags for unknown unicast drop, multicast and broadcast drop and arp unicast. Change-Id: I1203137510b8bee0a20ecfe5f2efad8043d4bac6 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-04-03lacp: passive mode support [VPP-1551]Steven Luong8-57/+152
By definition, passive mode means the node does not start sending lacp pdu until it first hears from the partner or remote. - Rename ptx machine's BEGIN state to NO_PERIODIC state. - Put periodic machine in NO_PERIDOIC state when the interface is enabled for lacp. ptx machine will transition out of NO_PERIODIC state when the local node hears from the remote or when the local node is configured for active mode. - Also add send and receive statistics for debugging. Change-Id: I747953b9595ed31328b2f4f3e7a8d15d01e04d7f Signed-off-by: Steven Luong <sluong@cisco.com>
2019-04-03IPSEC: correctly size per-thread dataNeale Ranns1-1/+1
Change-Id: Idfc05cd0e09b50a26eaf747b7c49f720b009159a Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-03virtio: Add support for multiqueueMohsin Kazmi7-88/+493
Change-Id: Id71ffa77e977651f219ac09d1feef334851209e1 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-04-03pci: Fix the crash on deleting the pci deviceMohsin Kazmi1-2/+5
clib_file_index is 0 if it is not initialized result in following assertion on deleteing the pci device. vpp/src/vppinfra/file.h:122 (clib_file_del_by_index) assertion `! pool_is_free (um->file_pool, _e)' fails This patch fixes the issue by initializing the clib_file_index to -1. Change-Id: I51d23f18e7ccf3143a4765d05aafc1363a007737 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-04-03rdma: tx: fix stats and add batchingBenoît Ganne1-61/+88
Tx stats are no longer counted twice. Submit tx packets as a single batch per vector instead of per-packet Change-Id: I26820b21f23842b3a67ace0b939095f3550d3856 Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-04-03IPSEC: show CLI improvementsNeale Ranns4-31/+208
Change-Id: I48a4b0a16f71cbab04dd0955d3ec4001074b57ed Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-03GBP: iVXLAN reflection checkNeale Ranns5-16/+68
packets should not egress on an iVXLAN tunnel if they arrived on one. Change-Id: I9adca30252364b4878f99e254aebc73b70a5d4d6 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-03session: allow more fifos in preallocated segmentsFlorin Coras1-4/+0
Change-Id: I335c092a8965c5dbec58603e9f5063dc8e3fc3ed Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-03session: fix cli for sessions in created stateFlorin Coras1-1/+2
Change-Id: Ie154afdc20000b905ff71e39823154db4d23eea4 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-03session: do not enable pre-input node with 0 workersFlorin Coras1-0/+3
Change-Id: I5c9e27b664ff1a8a74a6c1388f98af63571db7a5 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-02stat-segment: scaling improvementNeale Ranns3-18/+41
don't walk the entire list of entries each time a new one is added approximate/indicative numbers recorded on a VM: after: 50000 tunnels in 1.124443 secs, 44466.45 tunnels/sec before: 50000 tunnels in 5.202779 secs, 9610.25 tunnels/sec Change-Id: Ie1155416be76f55f2a0a88360ce53e15aeace785 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-02session: remove session logic from io rx evt senderFlorin Coras1-6/+1
Change-Id: I54fff6986ea6455aff25e0cf1b83117860859e10 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-02session: use app cb function wrappersFlorin Coras7-26/+22
Change-Id: I77ad9eb4d4c7699397aa4be6a973ef37c60db4c5 Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-02vppinfra: add u32x4 min / max sse4.2 inlinesDamjan Marion1-24/+49
Change-Id: I38e0be777199654ece286fdd1a42931ed99bbe8a Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-04-02tcp: improve rcv process ack processingFlorin Coras6-69/+87
- Avoid doing cc in closing states. - Rest connections closed with unread data Change-Id: I97d46b0459f03ea5439eeb0f233b6c17d3e06dfd Signed-off-by: Florin Coras <fcoras@cisco.com>
2019-04-02lisp: use crypto lib instead of openssl directlyFilip Tehlar1-25/+43
Change-Id: I9667ed16939dede55b24959045737742d1c7c449 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2019-04-02IPSEC: tunnel scaling - don't stack the inbould SANeale Ranns7-69/+189
Change-Id: I0b47590400aebea09aa1b27de753be638e1ba870 Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-02IPSEC: remove pointless feature orderingNeale Ranns1-4/+2
Change-Id: Ic1b657794d23cb4d1664fc749ad2468339e376df Signed-off-by: Neale Ranns <nranns@cisco.com>
2019-04-02dpdk: fix build error when mlx support enabledMatthew Smith1-1/+1
When building with environment variables set to enable mlx PMD support in DPDK, an error occurs: CMake Error at plugins/dpdk/CMakeLists.txt:104 (vpp_plugin_find_library): vpp_plugin_find_library Macro invoked with incorrect arguments for macro named: vpp_plugin_find_library Update a call to vpp_plugin_find_library() to include the right number of parameters. Change-Id: Ia0d66f93c6f94fdf822e2c3c4fe3f0ad01a90d57 Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2019-04-02vppinfra: fix sparse_vec_index() returning non-zero index for some ↵Andrew Yourtchenko3-0/+78
nonexistent elements If we are testing for an index whose membership bitmask happens to sit in LSB of uword, and there is nothing else set in that uword in the member bitmask, the shortcut path returning the valid index is taken even if the element with a given index doesn't exist in the sparse vector. This happens because the count of leading zeroes on the value of 0 is zero, which is equal to the value taken modulo bitsize uword. Take care of that case. Also add unittests showing the problem and verifying that sparse_vec_index2 does not have the same issue. Change-Id: I19117e13817c3e5de579b9250bb741de42491985 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-04-01Enhance vlib_buffer_clone to change headroom space for packetJohn Lo1-7/+66
Add function vlib_buffer_clone_at_offset() so that the cloned packets' 1st buffer will have the original packet header copied at the specified offset (instead of current_data). This can be used to increase headroom in the cloned packet to allow large header encaps in case the stdandard 128B predata is not enough. The original vlib_buffer_clone() still works the same as before. Change-Id: I3b50c8ad7e3952568bc141710567c99a3dacddce Signed-off-by: John Lo <loj@cisco.com>
2019-03-30VPP-1576: fix a class of spurious warningsDave Barach1-0/+5
Change-Id: I52198e97397bb6f3b5c0c30c44aac34c17650d4d Signed-off-by: Dave Barach <dave@barachs.net>
2019-03-30vppinfra: add few more cpuid flagsDamjan Marion1-0/+7
Change-Id: Ic2a61c45face18b6dd23d5509d75367d3b2441e9 Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-03-29SPAN: Add pending frame on current thread, not on mainIgor Mikhailov (imichail)1-6/+5
Previously, all frames were put for next node on the main thread, even if the execution was happening on a worker thread. Also, refactor to use API function vnet_get_main() Change-Id: Ibefb1b3871563a78aa30352a37b9216537e15bf7 Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>