summaryrefslogtreecommitdiffstats
path: root/vnet
AgeCommit message (Collapse)AuthorFilesLines
2016-09-26Fix for potential use of uninitialized variablesIgor Mikhailov (imichail)1-23/+13
The code allowed for the command 'set interface unnumbered' to be processed without specifying any parameters, thus the set logic of the command would have been using uninitialized variables 'unnumbered_sw_if_index' and 'inherit_from_sw_if_index'. Change-Id: I4de14fa1096527c5c48f74304db379f9953760a8 Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2016-09-25Packet-generator related fib 2.0 fixesDave Barach2-4/+10
Fix dpo0->dpo1 typo in ip4_local source RPF check. Pass source RPF check on drop adjacencies. Add a bit of defensive driving in ip4_icmp_error(...). Change-Id: I0e444886953f5500766f9b9662fad79fef44a260 Signed-off-by: Dave Barach <dave@barachs.net>
2016-09-23Rmove duplicate register of unformat_l2_input_next_nodeHongjun Ni1-3/+0
Change-Id: I38dc7c37b0debcea9aa1a366b516e86505dd096e Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-09-23Fix source RPF check in ip4_localDave Barach1-0/+5
We need to accept src ip addresses which hit receive and clean adjacencies. Change-Id: I8cf07f622058203665ed09280452ed8412984bd5 Signed-off-by: Dave Barach <dave@barachs.net>
2016-09-23Fix eventfd leakage issue in vhost-user modeSteve Shin2-6/+57
The leakage happens on the file descriptors for kickfd and vring's callfd. Those file descriptors should be closed when vhost-interface is disconnected. Change-Id: I12453b0c3eac037a1dc040a001465059b8f672c2 Signed-off-by: Steve Shin <jonshin@cisco.com>
2016-09-23VPP-424 fix lldp_main declarationKlement Sekera1-1/+1
Change-Id: I1f30977f0b315fa72d73a29a8585b1711d5044d8 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-09-23Fix detection of packet output via BVI into a BD and SHG adjustmentJohn Lo3-9/+13
In BVI output node, set a signature value in packet buffer field sw_if_index[VLIB_TX] so l2-input node can reliably check that packet came into a BD through BVI so it can set the SHG of the packet to 0 for a unicast packet. Change-Id: I301aa2896677e11d0c964ca476dddcb5a8804fc2 Signed-off-by: John Lo <loj@cisco.com>
2016-09-22l2_output: fix packet drop error reporting when mapping is in progressDamjan Marion1-1/+11
Change-Id: I64aa4c28e87e82a742313e9b89409c957fa62101 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-22Fix lisp-cp table_id lookup for punted packetsFlorin Coras1-6/+6
Change-Id: Ibe6f8c6fadb2e467353bafebffde04bc6eb72af3 Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-09-22vhost-user: branchless SSE4.2 implementation of map_guest_mem()Damjan Marion2-0/+45
Change-Id: I64349830c1f7534a8d090572e9473c51c0818e51 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-22vhost-user: remove dependency on dpdk codeDamjan Marion2-16/+24
Change-Id: I48908e0fa010570aefc43dd552ee81ee69fc2796 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-21A Protocol Independent Hierarchical FIB (VPP-352)Neale Ranns172-10658/+39115
Main Enhancements: - Protocol Independent FIB API - Hierarchical FIB entries. Dynamic recursive route resolution. - Extranet Support. - Integration of IP and MPLS forwarding. - Separation of FIB and Adjacency databases. - Data-Plane Object forwarding model. Change-Id: I52dc815c0d0aa8b493e3cf6b978568f3cc82296c Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-09-21VPP-414: Fixed IPSec transport mode in esp_encrypt.cMatus Fabian1-2/+5
Change-Id: I27accb0c87d6bf2fbbe90d8d1bc074697299e639 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-09-21dpdk: fix wrong tx ring size calculationsDamjan Marion4-27/+22
At many places code was using constant ring size od 4096 which was defined in macro DPDK_TX_RING_SIZE. As we support differnet ring size and default value s now 1024, we need to remove DPDK_TX_RING_SIZE and use value stored in device structure. For that reason dpdk_device_t.nb_tx_desc is moved to first cacheline. Change-Id: I2c2ac11f0f5e8ae779d34f9a9104eaf2921ec34c Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-20dpdk: move number of sub-interfaces to 2nd cacheline, introduce flagDamjan Marion3-20/+32
This saves 2 bytes from the 1st cacheline. Change-Id: I691a3a0ee07ec2db4ae85b96b451ef53ad8c9458 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-20dpdk: use flags for identifying interface typesDamjan Marion8-42/+36
This will allow us to handle some more complex situations like in case when hqos needs to be enabled only for some PMDs. Change-Id: I5421a8d4cf29b8394b9e956cc4e39737dd07dbbb Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-20Use SSE instructions for matching tagged frames by ethertypeDamjan Marion3-8/+29
This change improves performance in l2 scenarios for about 1-2%. Change-Id: Ie35ed8ad70a3b95dd78c0d158c485a10dabaf0eb Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-20VPP-419 add thread-safety to LLDP featureKlement Sekera2-30/+90
Change-Id: I3b1153a64674c2caef71c968739ecca6512e9929 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-09-20fd closed twiceEyal Bari4-5/+8
fd close()ed after call to unix_file_del of same fd Change-Id: Ia8bf77b72b6cea7c70e004199ce11a33b6260720 Signed-off-by: Eyal Bari <ebari@cisco.com>
2016-09-20VPP-282: Document changes for vnet/vnet/ethernetBilly McFall3-32/+146
Change-Id: Ie75f43516fdd76ba3720f65f38d66f14749e3e2d Signed-off-by: Billy McFall <bmcfall@redhat.com>
2016-09-20vhost-user: announce VIRTIO_F_VERSION_1Damjan Marion2-2/+4
On some setups with QEMU 2.7.0 and xenial guests following error message is reported in guest dmesg: [ 0.895944] virtio_net virtio3: virtio: device uses modern interface but does not have VIRTIO_F_VERSION_1 Change-Id: I5a0b3beffe75c9b0344d377098d94923b2ad7ae9 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-20Add structure to some of the documentation; VPP-223Chris Luke3-3/+3
Moves the random .md files, when rendered by Doxygen, into a config examples tree. We may later flesh this out into a more complete user documentation section. Change-Id: If423b82f1047f1c84f90876a786313054b5f7c77 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-09-19Add support for transparent ethernet bridging to GREDavid Hotham6-27/+90
Change-Id: Iaa3cefe223eb48b128893029a17e092b72a5157c Signed-off-by: David Hotham <david.hotham@metaswitch.com>
2016-09-19Cloned buffer refcount was set to 0Christophe Fontaine1-0/+1
The cloned buffer returned by rte_mempool_get_bulk had a refcount set to 0. This triggered an assert in drop-punt node. Change-Id: I77f53abd72dcdbf5dd512a05e13fe6d3fd569843 Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
2016-09-15VPP-306: Document changes for vnet/vnet/vxlanBilly McFall2-1/+76
Change-Id: I1ec4a80ee431758998716014e3fb6f80a5b9c168 Signed-off-by: Billy McFall <bmcfall@redhat.com>
2016-09-14VPP-407 fix coverity warningKlement Sekera1-5/+0
Change-Id: Ic3e5df2d272c2b31fbe875e1c09db0edac4813b8 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-09-14VPP-408: fix coverity warning in run_ping_ip46_address()Andrew Yourtchenko1-1/+9
CID 147141: Security best practices violations (DC.WEAK_CRYPTO) /vnet/vnet/ip/ping.c: 496 in run_ping_ip46_address() 490 ping_main_t *pm = &ping_main; 491 uword curr_proc = vlib_current_process (vm); 492 u32 n_replies = 0; 493 u32 n_requests = 0; 494 ping_run_t *pr = 0; 495 u32 ping_run_index = 0; CID 147141: Security best practices violations (DC.WEAK_CRYPTO) "rand" should not be used for security related applications, as linear congruential algorithms are too easy to break. 496 u16 icmp_id = rand (); 497 while (hash_get (pm->ping_run_by_icmp_id, icmp_id)) 498 { 499 vlib_cli_output (vm, "ICMP ID collision at %d, incrementing", icmp_id); 500 icmp_id++; 501 } Change-Id: I822350c03afce0b2dd35f37e27f55df82ca3443f Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2016-09-13VPP-404: IKEv2 profile auth rsa-sig cert-file fixedMatus Fabian2-1/+2
Change-Id: Iaeca4a86eb96096d6840d38c16d60641e9179662 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-09-13l2_output: reset bit after mapping is createdDamjan Marion1-0/+3
Change-Id: I894d71b397e7451d4e596b10258933287b7e965f Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-13VPP-344 Add LLDP featureKlement Sekera9-0/+1851
Change-Id: Iac96773e7f9028c0f09c3388893e69f67177439d Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-09-13Implement IPv6/IPv4 ping.Andrew Yourtchenko3-0/+874
Change-Id: Id53797c795c17fbacce3659c945f5126dc9dee86 Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2016-09-13Add some help into startup.confDamjan Marion1-0/+2
Change-Id: I84e9d7c3ccd32814c3eebf1cef0a4887c75812a8 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-13VPP-292 Document vnet/vnet/lisp-gpeFlorin Coras7-49/+485
Change-Id: I5b282964330f4c14f7991453ee02c455a8d367ea Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-09-13VPP-376: Refactor LISP dump API + VATFilip Tehlar2-4/+11
- refactor VAT so it won't cache data - remove unused filter flag from locator dump API call - json structure changed for locator and EID table dump calls - remote mapping VAT cli now accepts string for negative mapping action Change-Id: I776fb50659aaa7e98ad93715d282a83f78287344 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-09-13VPP-288: Documentation changes via doxygen for vnet/vnet/l2.Billy McFall14-53/+564
Change-Id: I55b552fd054610c993d14078ce048c8c4b676104 Signed-off-by: Billy McFall <bmcfall@redhat.com>
2016-09-12MAP: Doxyfying CLI macros - VPP-165Ole Troan1-48/+158
Change-Id: Iee203bf24e8c68e1367d12f297bf31019cc44c5c Signed-off-by: Ole Troan <ot@cisco.com>
2016-09-12af_packet: allocate per-worker list of free buffersDamjan Marion3-8/+15
Change-Id: I7850f04787fa7ce10c0ae8adefa166c91420f02d Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-12VPP-392 properly pass flags from vnet_hw_interface_set_flags_helper toKlement Sekera1-2/+1
vnet_main->hw_interface_link_up_down_functions Change-Id: I7aacaebade695e8fec8306426f693f287b605ed8 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-09-11Move CLI examples from wiki to code - VPP-165Keith Burns (alagalah)6-4/+243
Change-Id: I50ad0d79a6ffaf0a51848abf2c5ed57e83c8640f Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-09-07Fix bugs in IPFIX code discovered by coverityJuraj Sloboda3-24/+29
Change-Id: Ibe6ccb99c3c29c14efb34191f209a2f6a14293f7 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-09-07VPP-388 Improve IP header lookup in ipsec_outputFlorin Coras1-7/+7
Change-Id: I5df0067c9ce56d7a15a991b82d4761924d91758b Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-09-07Fix MTU size for the bonded interfaceSteve Shin1-0/+12
Configure the MTU/L3 packet size of the bonded interface as the lowest value of the slave intefaces Change-Id: I34fb4c2156e8ad3d9bf45efe332405d53f72867c Signed-off-by: Steve Shin <jonshin@cisco.com>
2016-09-07VPP-387: Fixed ipsec-input traceMatus Fabian1-20/+31
Change-Id: I0a687c5d5f745a6c82a58c8e20b987180704a685 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-09-07Vhost-User: Implement Indirect DescriptorsPierre Pfister2-94/+182
One of the main issue with virtio is the small queue size. VPP can quickly fill the queue before Linux could empty it, resulting in packet losses. Virtio indirect descriptors double the number of packet which may fit in the virtio queue (From 128 to 256 with standard qemu which hardcodes queue size to 256). Linux will not use such descriptors if the virtio MRG feature is enabled. You may add mrg_rxbuff=off option to qemu commandline when starting the VM such as to disable this feature. This way, Linux will use indirect buffers to receive packets. But it seems that Linux never uses indirect buffers to send packets. This patch also includes some optimization modifications. Change-Id: I26940d41ce6b7e3a08d5516018a8c46c5316ce1c Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-09-07VPP-204 Rework and finish IPFIX implementationJuraj Sloboda4-96/+470
Rework flow report registration system - add streams Add support for IPv6 and src and dst ports for TCP and UDP protocols Implement binary API for IPFIX classifier module Change-Id: Id05cc0127a7b95ceaeebf9c79a32c6936449bd63 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-09-06VPP-346 More VPP doc fixesChris Luke8-19/+22
- Fix issue in Doxy dependency check when nothing needs to be installed. 'set -e' and plain '[]' logic don't mix well. - Fix Makefile snafu when building Doxy output for a single file. - Include only one of vnet/vnet/buffer.c/dpdk_buffer.c in docs depending on DPDKness. This could do with some improvement in future, eg to properly align the pre-doxy steps with what Doxy does. - Fix rendering of 'inline' tag in Doxygen by having it interpret always_inline as "inline static". - Bunch of duplicate CLI command structure names that confused docs and may one day have caused debugging issues. - Several other Doxygen syntax issues fixed, like documenting non-existant parameters (usually just the wrong parameter name, typos, etc) Change-Id: Ia8cca545e5de9f8750602bffa3c4548acc8971aa Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-09-06Add packet/byte count output tx stats to tunap interfaceJohn Lo1-0/+12
Change-Id: I167c49d2a64e7a36a176d57054ecd99b398a9cca Signed-off-by: John Lo <loj@cisco.com>
2016-09-06Move iOAM Trace as a pluginVengada Govindan3-822/+547
Change-Id: I78322e91485e5429871bd356f668b8ed90f4265a Signed-off-by: Vengada Govindan <venggovi@cisco.com>
2016-09-06VPP-386 Fix map-server output in lisp-cp-lookup traceFlorin Coras1-6/+3
Change-Id: I67dd7896932b8ea96062b9ff074959c172b51ba4 Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-09-06IPsec speculative enqueue in exception path, fixes VPP-384Sergio Gonzalez Monroy2-3/+8
Enqueue buffers into next frame before validating them. Change-Id: I466518bc6f304678136a2c3d37f136ce878eef05 Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>