tldk.git
7 years agoadded Python script to generate streams for fe.cfg file 65/2765/1
Mohammad Abdul Awal [Tue, 6 Sep 2016 13:42:17 +0000 (14:42 +0100)]
added Python script to generate streams for fe.cfg file

This script allows to generate streams for frontend config file
with different parameters, including, number of streams, ipv4/ipv6
port in decimal or hex, FE/BE on same lcore or separate lcore etc.

Change-Id: I8a7e0137ef62363b272756ed4b8811804d4f9ec4
Signed-off-by: Mohammad Abdul Awal <mohammad.abdul.awal@intel.com>
7 years agoInitial working version of RSS 20/2620/3
Mohammad Abdul Awal [Wed, 15 Jun 2016 08:21:55 +0000 (09:21 +0100)]
Initial working version of RSS

The patch enables RSS support for TLDK udpfwd application.
The number of rx queues and tx queues are equal to the number of lcore
enabled for backend operation. NICs calculate the RSS hash based on the
UDP dest port only. The RSS hash key is calculated at runtime based on
the number of queues enebaled.

Change-Id: I06006a4606f8faad8f16241348b2ce19b70335e5
Signed-off-by: Mohammad Abdul Awal <mohammad.abdul.awal@intel.com>
7 years agoMerge "udpfwd: allow BE and FE run over same core"
Konstantin Ananyev [Fri, 29 Jul 2016 15:50:50 +0000 (15:50 +0000)]
Merge "udpfwd: allow BE and FE run over same core"

7 years agoudpfwd: allow BE and FE run over same core 35/2135/1
Konstantin Ananyev [Fri, 29 Jul 2016 13:19:59 +0000 (14:19 +0100)]
udpfwd: allow BE and FE run over same core

Change-Id: Id0d3aa20bf10735dca00a1e16b0dcc0ba9642140
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
7 years agoudpfwd: avoid loads blocked by stores while updating mbuf tx_offload 34/2134/1
Konstantin Ananyev [Fri, 29 Jul 2016 12:52:58 +0000 (13:52 +0100)]
udpfwd: avoid loads blocked by stores while updating mbuf tx_offload

Change-Id: Id0b6e2cf176493188f6628f92700a3095ab6af85
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
7 years agofix segfault on input packets with invalid checksum 92/1992/1
Konstantin Ananyev [Mon, 18 Jul 2016 23:02:30 +0000 (00:02 +0100)]
fix segfault on input packets with invalid checksum

libtle_udp: prevent receive code-path to reference packets
that were already freed.

udpfwd: if input device doesn't support IPV4 checksum offload,
we need to recalculate IPV4 header checksum of the
reassembled packet.

fixes 3395610ea65d ("Initial commit of tldk code").
fixes 8efc4c11464f ("Change libtle_udp to use dring").

Change-Id: I77523b1ba63b0f8d25d5f0b3bc777a338ad8acf5
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
7 years agoUpdate README to sync with latest changes 11/1911/2
Konstantin Ananyev [Thu, 7 Jul 2016 19:33:48 +0000 (20:33 +0100)]
Update README to sync with latest changes

Change-Id: Ib9238612706f963b9581f98c4b2592e3c0d55cd0
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
7 years agoChange libtle_udp to use dring. 10/1910/2
Konstantin Ananyev [Thu, 7 Jul 2016 19:24:24 +0000 (20:24 +0100)]
Change libtle_udp to use dring.

Right now didn't see any noticeable performance boost with these changes.
Though it allowed to get rid of using locks at UDP TX code-path
and simplify the code quite a lot.

Change-Id: If865abd3db9127f510df670d9a8edb168b915770
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
7 years agoinitial tle_dring implementation 09/1909/2
Konstantin Ananyev [Thu, 7 Jul 2016 18:22:38 +0000 (19:22 +0100)]
initial tle_dring implementation

The Dynamic Ring (dring) is a implementation of unbounded FIFO queue,
that supports lockless bulk enqueue/dequeue for multiple producers/consumers.
Internally it contains producer/consumer head/tail indexes
(same as DPDK rte_ring), plus linked list of Dynamic Ring Blocks (drb)s.
Each drb contains some metadata plus array of pointers to queued objects.
It is a caller responsibility to provide sufficient number of drbs for
enqueue operation, and manage unused drbs returned by dequeue operation.
dring features:
- FIFO (First In First Out)
- Lockless implementation.
- Multi- or single-consumer dequeue.
- Multi- or single-producer enqueue.
- Bulk dequeue.
- Bulk enqueue.

Change-Id: I3621c99c6b114a387036a397e79baa8d1588bdb5
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
7 years agoIntroduce extra layer of hierarchy to the makefiles. 08/1908/1
Konstantin Ananyev [Thu, 7 Jul 2016 18:13:25 +0000 (19:13 +0100)]
Introduce extra layer of hierarchy to the makefiles.

Now each subdir in the TLDK_ROOT has it's own Makefile.
In preparation for further project expansion.

Change-Id: I80560680a8538734986941e8df343c5393c621cc
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
7 years agolibtle_udp: add missing license header for udp_rxtx.c 92/1792/1
Konstantin Ananyev [Tue, 28 Jun 2016 16:53:53 +0000 (17:53 +0100)]
libtle_udp: add missing license header for udp_rxtx.c

Change-Id: If31a72e07ffe4947297c722ce5624ea8ed5f101f
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
7 years agoMerge "Adding a .gitignore"
Konstantin Ananyev [Mon, 27 Jun 2016 13:52:34 +0000 (13:52 +0000)]
Merge "Adding a .gitignore"

7 years agoFixed reallocated memory initialisation bug 84/1684/2
Mohammad Abdul Awal [Tue, 21 Jun 2016 09:56:55 +0000 (10:56 +0100)]
Fixed reallocated memory initialisation bug

Change-Id: I8db6fe42303022c5ee3326892a4670f8445c27ed
Signed-off-by: Mohammad Abdul Awal <mohammad.abdul.awal@intel.com>
7 years agoAdding a .gitignore 96/1396/5
Ed Warnicke [Fri, 3 Jun 2016 21:38:26 +0000 (14:38 -0700)]
Adding a .gitignore

Change-Id: Iee1d670f0132d1cce7369377c7b2e2f808c8a9df
Signed-off-by: Ed Warnicke <eaw@cisco.com>
7 years agoMerge "Add vagrant/ support"
Konstantin Ananyev [Tue, 7 Jun 2016 15:26:40 +0000 (15:26 +0000)]
Merge "Add vagrant/ support"

7 years agoAdding .gitreview file 90/1390/2
Ed Warnicke [Fri, 3 Jun 2016 16:49:43 +0000 (11:49 -0500)]
Adding .gitreview file

Change-Id: I5f2cc522d781bbc1ae9a74d16eaf194d05721247
Signed-off-by: Ed Warnicke <eaw@cisco.com>
7 years agoAdd vagrant/ support 97/1397/3
Ed Warnicke [Fri, 3 Jun 2016 21:40:05 +0000 (14:40 -0700)]
Add vagrant/ support

Change-Id: I1ca9900d487b96e86a64a817abea7bec1154feff
Signed-off-by: Ed Warnicke <eaw@cisco.com>
7 years agoInitial commit of tldk code. 89/1389/3
Konstantin Ananyev [Fri, 3 Jun 2016 15:43:13 +0000 (16:43 +0100)]
Initial commit of tldk code.

Change-Id: Ib96fdd2c57bae0a51ed420137c35eb8e2ee58473
Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Signed-off-by: Ed Warnicke <eaw@cisco.com>
8 years agoInitial empty repository
C.J. Collier [Thu, 19 May 2016 07:49:37 +0000 (07:49 +0000)]
Initial empty repository