aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-dpdk
AgeCommit message (Collapse)Author
2016-01-25Port "67260075 linux-generic: init: handle local/global init/term cleanly"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-25linux-dpdk: packet_io: delete file with old pktio implementationZoltan Kiss
The previous patch made this unused. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-25linux-dpdk: packet_io: reuse linux-generic code and enable classificationZoltan Kiss
This patch reuses odp_packet_io.c and pktio/loop.c from linux-generic's codebase, and plugs the DPDK specific pieces from odp_packet_dpdk.c into that framework. In order to do that the following steps were taken: - sync up odp_packet_io_internal.h: this file is nearly the same, except we use only loop and our DPDK specific parts - move DPDK specific functionality to odp_packet_dpdk.c, and use those functions in dpdk_pktio_ops. The old pktio code will be deleted in a separate patch - enable classification in Makefiles and init: linux-generic code refers to that, that's why we can't do this in separate patches Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-25Port "e6216bc6 linux-generic: pktio: fill in L2 parse results by default"Zoltan Kiss
But don't parse L2 header by default, only on demand. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-25linux-dpdk: packet: remove frame_offset from packet header structZoltan Kiss
It's an obsolete garbage. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-14linux-dpdk: init: fix return value checkingZoltan Kiss
rte_eal_init() returns the consumed arguments, but it doesn't count the first one, which is used only as a logging prefix. Count this when checking return value. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-14linux-dpdk: init: don't save optindZoltan Kiss
DPDK now takes care of this global variable, no need to save and reset here as well. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-14linux-dpdk: init: fix command line argumentsZoltan Kiss
rte_eal_init() expects the first argument is the "program name", it is used for logging purposes. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-07linux-dpdk: init: remove getopt library resetZoltan Kiss
This is now taken care by DPDK itself. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-06linux-dpdk: upgrade to DPDK 2.2.0Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-06linux-dpdk: README: testing moved to newer kernelv1.6.0.0_DPDK_2.2.0-rc1Zoltan Kiss
Quite a while ago, but the README referred to old data. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-05linux-dpdk: remove pktio_tap testZoltan Kiss
This platform doesn't support that, therefore we have to create a local copy of this Makefile.am Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-05Port "41e79bb2 api: pktio: add odp_pktio_print() API"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-05Port "6a598853 api: clib: added standard c library api"Zoltan Kiss
The DPDK memcpy version is also exposed through function pointer. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-05Port "10042384 api: rwlock_recursive: added recursive rwlock"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-05Port "a0b30a27 api: spinlock_recursive: added recursive spinlock"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-05Port "da9cde9a api: thread: added THREAD_COUNT_MAX define"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-05Port "bbf9c099 api: hash: Added crc32 and crc32c hash functions"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2016-01-05Port "linux-generic: thread: removed internal max threads define"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-21linux-dpdk: remove clang warningsv1.5.0.0_DPDK_2.2.0-rc1Zoltan Kiss
There is a type compatibility issue in recv_pkt_dpdk(), although it doesn't have an effect as both of them are pointers. The rte_mbuf accessor functions are bringing up alignment change warnings, which are false-positives in this case. These fields are defined with their appropriate type in the original structure, so their alignment is guaranteed, but the reason for these functions is to hide that structure. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-21linux-dpdk: define test wrapper script in Makefile.incZoltan Kiss
That way the helper tests can pick it up too. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-18linux-dpdk: cpumask: go back to linux-generic cpumask implementationZoltan Kiss
The only reason for a separate one is because odp_cpumask_default_worker() goes through the lcore list to get this data for us. But with the master thread's affinity fixed there is no need for that, the linux-generic way of using the thread affinity is good for linux-dpdk as well. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-18linux-dpdk: init: pass only one core through -c parameterZoltan Kiss
The others would be used for DPDK lcore threads, which are not accessible for an ODP application. It requires ODP thread init to set up lcore_role, though it's not widely used in other DPDK libs. Also reset the original affinity of the calling thread, as DPDK limits it down to one core. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-18linux-dpdk: pool: check returned number of workersZoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-15linux-dpdk: remove unused source fileZoltan Kiss
helper/linux.c is used instead of this. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-10linux-dpdk: test: fix huge page info printZoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-10Port "8ecc8fa9 linux-generic: schedule pktin_poll: account pktio stop state"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-10Port "10b79440 linux-generic: pktio: configuration functions check that ↵Zoltan Kiss
interface is stopped" Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-10Port "ed10cea1 linux-generic: pktio: check interface mode is compatible ↵Zoltan Kiss
before receiving or sending" And "45259bf4 linux-generic: pktio: factor state management into packet_io", plus add some extra logging. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-10Port "7c7c3b8c api: packet_io: added odp_pktio_param_t"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-09linux-dpdk: pktio: check for pktio_start when started and pktio_stop when ↵Zoltan Kiss
stopped DPDK checks that too but it doesn't return an error, so we should maintain the status too. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-07linux-dpdk: packet: implement odp_packet_alloc/free_multi() functionsZoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-07linux-dpdk: buffer: implement odp_buffer_alloc/free_multi() functionsZoltan Kiss
Plus set the errno as well, and codify further that odp_buffer_t == (struct rte_mbuf *) . Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-03linux-dpdk: buffer: enforce pool type in odp_buffer_alloc()Zoltan Kiss
It doesn't make any sense to allow this function allocate from non-buffer pools. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-03Port "44dde8a5 api: time: unbind CPU cycles from time API"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-02Port "d7049e08 platform: move list of API files to Makefile.inc so it is ↵Zoltan Kiss
common to all platforms" Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-12-01linux-dpdk: init: parse command line options using rte_strsplit()v1.4.0.0_DPDK_2.2.0-rc1Miroslav Kiradzhiyski
DPDK already implements rte_strsplit() which can be used instead of the parse_dpdk_args() function. This saves some dynamic memory allocation and simplifies the code. Signed-off-by: Miroslav Kiradzhiyski <miroslav@virtualopensystems.com> Signed-off-by: Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-24linux-dpdk: init: fix cpumask string allocationZoltan Kiss
The calloc() has several issues in calculating the string size: - doesn't account for the "0x" prefix - nor the space after the core mask - sizeof(core_mask) should be doubled, as each byte can be represented as two hex characters But also the width of coremask cause a limitation. This patch uses the odp_cpumask_*() functions to create a proper mask. Reported-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-20linux-dpdk: init: allow passing DPDK cmd line through odp_global_init()Zoltan Kiss
The platform_params parameter will convey that through. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-06linux-dpdk: move support target to DPDK 2.2.0-rc1Zoltan Kiss
- ixgbe vPMD now has lower requirement for recv burst - mlx5 supported Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-06linux-dpdk: test: detect hugepages mount error and prefer 1G pagesZoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-06linux-dpdk: README: fix compile instructionsZoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org> Reported-by: P D, Arun <arun.p_d@nokia.com>
2015-11-06linux-dpdk: buffer: remove limitations due to DPDK 1.7.1 bugsZoltan Kiss
It was forgotten at the time of upgrade to 2.1.0. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-04linux-dpdk: errno: use rte_errno instead of __odp_errnoZoltan Kiss
It is DPDK's errno variable. odp_pktio_send() also makes sure that it is set even if the PMD doesn't do that. The macro in odp_buffer_inlines.h is a workaround to make sure linux-generic timer implementation doesn't have a linking issue. It would be slightly better to have it in a local copy of odp_internal.h, but having it in sync with linux-generic is more important. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-04linux-dpdk: errno: create localy copy of linux-generic implementationZoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-04Port 52ca6f65 "linux-generic: cpu: implementation for cycle count API"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-04Port a4903e1f "api: thread: added thread count max"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-04Port 4e0c9052 "linux-generic: pktio: implement odp_pktio_param_init() API"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-04Port 5126cc51 "linux-generic: cpu: created arch depedent cpu_cycles files"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
2015-11-04Port e51f4f01 "api: config: removed ODP_CONFIG_MAX_THREADS"Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>