aboutsummaryrefslogtreecommitdiffstats
path: root/vnet/vnet/devices/dpdk/vhost_user.c
AgeCommit message (Collapse)AuthorFilesLines
2016-05-31VPP-102: vHost reconnect to previously used sockets on VPP restartJohn Lo1-0/+8
Change-Id: Ida11bddb52268e0e8513b7b379eeed6103bd48f1 Signed-off-by: John Lo <loj@cisco.com>
2016-04-29Improve performance of dpdk-vhost driverShesha Sreenivasamurthy1-0/+9
By setting the flag in used table, guest is prevented from kicking the host when it adds buffers. This results in 100% performance improvement when tested throughput using iperf3. Change-Id: Iefaf5b97d1444c216bb373998732a437d333d521 Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2016-04-27Live VM migration support for vhost-userShesha Sreenivasamurthy1-4/+58
Change-Id: I79bef6dc94b3ad688564a409d14d63ca3125a305 Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2016-04-25Disable TSO/CSUM offloadingShesha Sreenivasamurthy1-0/+15
Enabling these features breaks L4 traffic when a VHOST interface is bridged with a hardware interface which does not support such offloading. (Eg: enic) Change-Id: Ife3d292a8860eb60b82f1473e2d0dd7329e51d5e Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2016-04-22Add clib_memcpy macro based on DPDK rte_memcpy implementationDamjan Marion1-3/+3
Change-Id: I22cb443c4bd0bf298abb6f06e8e4ca65a44a2854 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-18Add support for AArch32Christophe Fontaine1-2/+2
gcc version 4.9.2 (Raspbian 4.9.2-10) Tested on Linux raspberrypi 4.4.6-v7+ #875 SMP Tue Apr 12 16:33:02 BST 2016 armv7l GNU/Linux CPUs may be little or big endian, detect with gcc flags, not the processor architecture Add a new flag $(PLATFORM)_uses_openssl which allows to disable the link with openssl lib. vlib/vlib/threads.c: startup.conf must: - specify the heapsize as we don't have hugepages on raspbian cpu { main-core 3 } heapsize 64M Corrects in various files the assumption uword == u64 and replaces 'u64' cast with 'pointer_to_uword' and 'uword_to_pointer' where appropriate. 256 CPUs may create an OOM when testing with small memory footprint ( heapsize 64M ), allows the number of VLIB_MAX_CPUS to be set in platforms/*.mk vppinfra/vppinfra/longjmp.S: ARM - copy r1 (1st parameter of the setjmp call) to r0 (return value) vppinfra/vppinfra/time.h: On ARMv7 in AArch32 mode, we can access to a 64bit register to retreive the cycles count. gcc on rpi only declare ARM_ARCH 6. Override this info, and check if it is possible to use 'mrrc'. /!\ the time function will NOT work without allowing the user mode access to the PMU. You may download the source of the kmod here: https://github.com/christophefontaine/arm_rdtsc Change-Id: I8142606436d9671a184133b935398427f08a8bd2 Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
2016-03-04Collect per Q stats for vhost-user interfaceShesha Sreenivasamurthy1-4/+8
Change-Id: I394960c300ff7a81c4c8e05afd5a4175e66666eb Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2016-02-24Enable all vrings if PROTOCOL_FEATURES are not negotiatedShesha Sreenivasamurthy1-5/+22
Change-Id: Ib785a2ffd2fcbe3a836dd59ad419bcc2fa298686 Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2016-02-24Handle dynamic enable/disable VHOST_USER interfaceShesha Sreenivasamurthy1-6/+14
If number of Qs enabled by the guest is less than number of Qs exported to guest, then all threads route packet to Q0 with the assumption that guest is not interested in performance. If all Qs are enabled, each thread queues packet in their own TX-Q of the VHOST_USER interface, boosting performance. Change-Id: Ic24bb8c0505b11c7513aeecd21c9ec5da5f90138 Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2016-02-23Fix warnings in vhost-user code with older version of DPDKDamjan Marion1-1/+5
Change-Id: If76ef977e3914b51da0d6bb5e4089acb0bd67baa Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-19Add custom mac address option to vhost interfaces.Pierre Pfister1-6/+15
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-14Implement multiple TX queue sharingDamjan Marion1-9/+6
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-10Compile with -Werror, so Jenkins will catch warningsDave Barach1-1/+1
Change-Id: I9255c75b6c6cbc638cdcc411632a924cb06f28c0 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-10Replace AC_PROG_LIBTOOL with LT_INITDave Barach1-1/+1
Change-Id: I642c4b8e83dd07708658a10ad46e9fd2c28a7f1f Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-10Vhost multi-q supportShesha Sreenivasamurthy1-100/+348
Remove multi-q support patch for DPDK-2.1.0 Change-Id: I685f3886b3883803210221682fa80353670a6970 Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
2015-12-08Initial commit of vpp code.v1.0.0Ed Warnicke1-0/+1550
Change-Id: Ib246f1fbfce93274020ee93ce461e3d8bd8b9f17 Signed-off-by: Ed Warnicke <eaw@cisco.com>