summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2016-02-19Rebalance checkConnected()Robert Varga1-8/+9
AtomicBoolean forces the enclosed boolean to be cache-aligned, needlessly hitting a cacheline. Since we only flip state only once, when the connection is severed, we can turn this into a volatile boolean. Doing that is costing us a synchronized close(), but that is perfectly acceptable, as that is called only once. Change-Id: I76fda3d3f65a5f800e7d3970b0b8fe99fb3e8b6d Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-19Handle dpdk packet_types properlyDamjan Marion2-14/+45
Change-Id: Ie13f92a21ed8b81775b1e9cbbf2619e752ab6a04 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-19Add custom mac address option to vhost interfaces.Pierre Pfister7-15/+44
Generating a new MAC address everytime vpp reboots can quickly become cumbersome (e.g. in test scenarios). This commit allows vhost mac addresses to be configured manually. Change-Id: Ic6d16a2d14cdf8e49dc29041bbafde39d9fc8370 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-02-19Serialize and upload the data plane node graphDave Barach7-5/+398
Include node names and graph arcs. Prep work for uploading node runtime data, so the latter can be reported in a comprehensible manner. Change-Id: I215b1f8cff244200c37c7e088f1f22229dc97eb6 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-19Per-interface, per-address-family fast packet filterDave Barach12-6/+1690
Change-Id: I122aa8edfb16a433a8ccdfb72ee8463c48c56d6d Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-19dpdk: fix enic pmd driver tx functionYoann Desmouceaux1-0/+28
Adding a patch to fix DPDK enic PMD driver TX function. The enic PMD driver send function uses a constant offset instead of relying on the data_off in the mbuf to find the start of the packet. Change-Id: I74dbcce949f08e39070a369d992a90586af140a6 Signed-off-by: Yoann Desmouceaux <ydesmouc@cisco.com>
2016-02-19Add GDB and GDB Server to bootstrap filesKeith Burns (alagalah)2-1/+5
Validated following images used do not contain gdb, gdbserver: puppetlabs/centos-7.0-64-nocm puppetlabs/ubuntu-14.04-64-nocm Note that centos7 does not include emacs Change-Id: I091a64a7c667e081574763537de724f9feaae0dc Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-02-18Add jumbo frames support to non-dpdk vhost interfaces.Pierre Pfister4-290/+394
This code provided inter-VM (2 cores per VM) throughput of 22Gbps using iperf through VPP (1 core) with 9k frames. With the same setup and pktgen running on both sides, it reached 5Mpps with no packets drop (Equivalent to before the patch). During the tests the average vector length was about 1, which likely means that VPP is not the bottleneck. The patch also includes some generic functions for vlib buffers allowing for chained buffer construction whether or not DPDK is enabled. Change-Id: Icfd1803e84b2b4578f305ab730576211f6242d6a Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-02-16Increase number of per-cpu mheaps to 256Damjan Marion3-2/+8
It also includes check to ensure that number of per-cpu mheaps is not lower than number of cpus. Change-Id: Ibc68b34dda130f922243f9ea15b03e44bbcac269 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-16Remove vec_sort macroDamjan Marion1-27/+0
vec_sort macro was using gcc proprietary nested functions that require a executable stack and they are considered as unsafe. Also, nested functions are not supported by other compilers. vec_sort_with_function() should be used instead. Change-Id: I05959da63d222ec71c090ba63420b427ce10c79b Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-16Show DPDK EAL cmdline args in 'show version verbose'Damjan Marion3-5/+16
Change-Id: I88a8038a36e7e5060f354cd66a2532ef8c996b67 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-15Disable for-us udp/tcp checksum validation by defaultDave Barach3-4/+28
This patch alters behavior for dpdk rx packets. Depending on test results, it may be necessary to extend the scheme to packets received on non-dpdk paravirtualized interfaces, and packets originating in the vpp stack itself. Change-Id: I8444232a90ff176e7d6a688e36801174575251a1 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-14Implement multiple TX queue sharingDamjan Marion4-21/+46
Maximum number of TX queues ca be defined by NIC driver or configured manualy with 'dpdk { max-tx-queues X }'. If system have more worker threads than TX queues they will be shared between them. Before this change only one tx queue was used in such cases. Change-Id: Iab68170ab45fa6b9925fc4e79ccab9222f095e7e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-14Increase VLIB_MAX_CPUS to 256Damjan Marion3-9/+7
Change-Id: Iac68b38dda1a0f9e2242f9eab5b03e44bbcac269 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-14Make size of per-thread mini counter vector equal to number of threadsDamjan Marion2-38/+30
Change-Id: Icfd91cca3cd686e5efa8a988f04483238605e1cb Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-13Remove duplicate vlib_call_init_function() for tuntap initOleg A. Arkhangelsky1-2/+0
Change-Id: Ie642d15d2843f02a01448afe91aa7311e6131047 Signed-off-by: Oleg A. Arkhangelsky <sysoleg@yandex.ru>
2016-02-13Increase number of dpdk lcores to 256Damjan Marion1-0/+1
Change-Id: Ia0e228d02fd9f180ed9ca468074ab38d575e415e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-12Fix ARP show exception when not ARP entries as found.Keith Wiles1-8/+11
The fix tests if the ARP table exist before attempting to interate over the entries. Change-Id: I22cad5ba3a01c3fba1feac33745a29ff1f7f8fe1 Signed-off-by: Keith Wiles <keith.wiles@intel.com>
2016-02-12Performance tools, initial check-inDave Barach32-0/+11385
Change-Id: I9fb4f4babecbe02d171f38c4d089634e90141937 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-11Pull in some additional symbols that may be needed by plugins.Josh Gahm1-0/+4
Ensure that some additional rte_* symbols (from the dpdk library) and pulled into the vpp image so that they will be available to plugins. Also, provide vlib's dpdk configuration function so that plugins that need to make dpdk calls during initialization/configuration may ensure that dpdk itself is initialized first. Change-Id: Iff8b518c6fc23e9e2f24a85944e5b246c80e5f67 Signed-off-by: Josh Gahm <jgahm@cisco.com>
2016-02-11Use vppinfra bitmap for dpdk coremaskDamjan Marion2-7/+29
Change-Id: Iec5ebadf120f742f43a681c4d394aa97ad2ae1e1 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-10Remove strcasecmp(3) declarationRobert Varga1-1/+1
This should be coming from string.h. Change-Id: Id88bb1d2a4681a9dcf6db9c7de2580a5219869d1 Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-10GetStringUTFChars() may failRobert Varga1-25/+41
GetStringUTFChars() can fail, returning NULL. Make sure we do not trip over it. Change-Id: I2d6b9c72c353c2423042fd035087f0d57fdc08ca Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-10newIntArray() may failRobert Varga1-1/+4
Allocation of the integer array may fail, guard against NPE. Change-Id: I3e860153597638392c9b669a6ad586fd2e03a64d Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-10Compile with -Werror, so Jenkins will catch warningsDave Barach2-5/+5
Change-Id: I9255c75b6c6cbc638cdcc411632a924cb06f28c0 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-10Indent vppjni.c to be consistentRobert Varga1-775/+755
Pure cleanup of indentation and brace placement, so the file ends up being consisteny. Change-Id: Idd2f20deda486d16b455f3e13cacbc2f3baa50f1 Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-10Replace AC_PROG_LIBTOOL with LT_INITDave Barach11-12/+10
Change-Id: I642c4b8e83dd07708658a10ad46e9fd2c28a7f1f Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-10Add Top-Level Wrapper MakefileDamjan Marion1-0/+141
Change-Id: Ie3431986ddb42db8d331fcb3d34250a6ec9d9a02 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-10Vhost multi-q supportShesha Sreenivasamurthy5-115/+415
Remove multi-q support patch for DPDK-2.1.0 Change-Id: I685f3886b3883803210221682fa80353670a6970 Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2016-02-10Clean up gcc-5.2 warningsDave Barach17-108/+75
Change-Id: I7b0aa42a61607d4d30fe3627032d3837b2838982 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-09Modify hand-coded JNI function names to match refactoring ofDave Wallace1-19/+19
vppConn.java in commit #169 Change-Id: Id9feaebdce199f239741a10d31bf7aa473a62806 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2016-02-09Make cleanup_rx_thread staticRobert Varga1-1/+1
The symbol is not referenced outside of the source file, hide it from the world. Change-Id: Id5db73efff0767657ebc5a0b25dcccd2b85e354d Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-09Disable EAL message spew which can easily fill /var/logDave Barach1-0/+26
Change-Id: I63da892d1c4148a54ea33c172986c854932beb01 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-09Mark internal implementation functions as hiddenRobert Varga1-5/+5
Adding hidden attribute results in compilation failure if the symbol is not found when linking the .so. It should also lead to better performance, as it side-steps GOT. Change-Id: I7b6f39e663ca2b3e432669a3e2b36d7395f555b6 Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-09SFF NSH support VXLAN GPEKeith Burns (alagalah)1-15/+115
Change-Id: I23dae9e13f6c2ec7b3326710a40f28984ff6fe1f Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-02-09Fixup symbol names in vpp-japiRobert Varga1-4/+4
There is skew between symbol names of vppjni_env.[ch], causing the library to fail to load. This patch fixes that up. Change-Id: I972e6d0ce72fd05ee3518e7161e20946ff3426ca Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-08Set vnet_buffer(b0)->sw_if_index[VLIB_TX]Dave Barach1-0/+3
Change-Id: I3274c8d426113c71fbb900978b94caef85eabae1 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-08Cisco Discovery Protocol, initial working attemptDave Barach9-1/+1495
There are multiple enhancement opportunities... Change-Id: I976772dc3802f8284e8c6457c001d68184831e25 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-05Clean up per-thread elog track nomenclature.Dave Barach1-3/+5
Change-Id: I4b65b29f9291b3fd47e05576d9a0789af8912982 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-05DPDK patch: Add missing init of packet_type field.Todd Foggoa1-0/+70
This can cause packets to be mishandled in systems with more than one type of driver in use. Change-Id: I73ae91ff5d7a22fa542c3b39f6ccfe50437ec71b Signed-off-by: Todd Foggoa <tfoggoa@cisco.com>
2016-02-05DPDK patch: Allow applications to override rte_delay_us()Todd Foggoa1-0/+43
Some applications may wish to define their own implentation of usec delay other than the existing blocking one. The default behavior remains unchanged. Change-Id: I699b2ed460763492502d22b7e8532514e0886ecd Signed-off-by: Todd Foggoa <tfoggoa@cisco.com>
2016-02-05DPDK patch: Fix a crash in igb_uio driver when the device is removed.Todd Foggoa1-0/+33
Change-Id: I101166ebda1c06e20a3c89cd38786ce44b7ab5d5 Signed-off-by: Todd Foggoa <tfoggoa@cisco.com>
2016-01-27CLI: If an error happens on the socket being polled, then the CLIOle Troan1-0/+2
does not close the socket. Resulting in the main thread being stuck in a tight infinite loop polling on the erronous socket. Change-Id: I630b84b97c059acce117d56e41cd201131db4cab Signed-off-by: Ole Troan <ot@cisco.com>
2016-02-04Remove redundant apt-get install of dkms and debhelper.Dave Wallace1-3/+0
Change-Id: Id2caea331f86a71f26990e1ae11288826157e737 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2016-02-04Change non-default route ethernet interfaces state to down so VPP will use them.Dave Wallace1-0/+12
Change-Id: Icdb1a8d35a97e01d5e1be13fdc89ce3f9ec62e1a Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2016-02-04dpdk_buffer.c: Honor clone_count even when there isn't a freelist handlerKevin Paul Herbert1-4/+7
The DPDK glue did not support cloned packets which do not have a freelist handler. Add support for this case. Change-Id: I8f17cd4952df97989d90d3f3e39792bc3739705c Signed-off-by: Kevin Paul Herbert <kph@cisco.com>
2016-02-04ip[46].h: Remove tcp referenceKevin Paul Herbert2-8/+0
This is not used. Remove it. Change-Id: I63f705db6bc10137d6e28977aa75e60f4e13cfe8 Signed-off-by: Kevin Paul Herbert <kph@cisco.com>
2016-02-03p1.c: Remove log() symbolKevin Paul Herbert1-1/+0
This symbol is defined in the math library, and is a compiler built-in. Plug-ins that need it should link with -lm. Change-Id: I967c87ccea0e762b68ca59cfaa460f3d6e534a59 Signed-off-by: Kevin Paul Herbert <kph@cisco.com>
2016-02-03Need to include symbolic links in the lib package: libXXX.so, libXXX.so.0Dave Barach1-2/+4
Otherwise, autotools can't find libXXX, -lXXX doesn't work, etc. Change-Id: I9c4c43f795ca872475f65bc0e4494674eaa00576 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-03Switched vagrant for ~/git/vpp to /vppEd Warnicke3-7/+25
build-root/vagrant/Vagrantfile was always mounting the vpp into /vpp Now rather than cloning it and building, we just use it as mounted. In order to let folks know what happened, a README.moved is copied into the ~/git/vpp so folks know what happened. In addition to make it easier for folks to do commits from withing the vagrant, we install git-review, and copy in the users .gitconfig and .gnupg directory. A couple of notes about this. VMWare goes much much faster in all cases. Virtualbox is a bit slower in the very first run (without ccache). One of the benefits of using the mounted /vpp though is that after your first vagrant up, you always have access to the .ccache, as it lives outside the vagrant, and so in steady state everything is faster. Change-Id: I2cd2c28181b3d7e664240dfe2249b5be3f1b9241 Signed-off-by: Ed Warnicke <eaw@cisco.com>