aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-01-25Port "9766969f linux-generic: define posix extension level once"v1.6.0.0_DPDK_2.2.0Zoltan Kiss
Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org>
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-25Merge branch 'master' of https://git.linaro.org/lng/odpZoltan Kiss
Conflicts: example/Makefile.am
2016-01-25doc: implementers-guide: inactive precond testsChristophe Milard
Signed-off-by: Christophe Milard <christophe.milard@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25validation: possibility to inactive preconded testChristophe Milard
When marking a test which has a precondition as temporarly inactive, it feels better to be able to keep the precondition function: ODP_TEST_INFO_CONDITIONAL(send_failure, check_send_failure) will be marked as inactive by: ODP_TEST_INFO_INACTIVE(send_failure, check_send_failure) rather than: ODP_TEST_INFO_INACTIVE(send_failure) Remarking the test as active later on is then only a matter of changing back the macro name. Signed-off-by: Christophe Milard <christophe.milard@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25doc: implementers-guide: conditional testsChristophe Milard
Documentation on conditional test is added here, as it seemed to be missing Signed-off-by: Christophe Milard <christophe.milard@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25validation: pktio: use odp_time_ns() instead own functionIvan Khoronzhuk
Now odp_time_wait_ns() can be used. Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25linux-generic: timer: limit notification about resolution incorrectnessIvan Khoronzhuk
https://bugs.linaro.org/show_bug.cgi?id=1992 Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Reviewed-and-tested-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25validation: scheduler: add timing tests for scheduled queue typesBill Fischofer
Expand the existing scheduler chaos test to provide timing information for mixed queues as well as individual timings for parallel, atomic, and ordered queues. This enables implementation scheduling efficiency to be displayed by queue type. Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org> Reviewed-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25linux-generic: packet_io: expose pktio_tbl and is_free()Zoltan Kiss
The table and the accessor would be used by ODP-DPDK, when it scans through all the pktio interfaces to flush out TX completed buffers. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org> Reviewed-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25linux-generic: pktio: remove unwanted initialisationStuart Haslam
Remove an unwanted initialisation and fix a bad indentation which crept in during a merge. Signed-off-by: Stuart Haslam <stuart.haslam@linaro.org> Reviewed-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25validation: shmem: sync threads with barrierIvan Khoronzhuk
It's not convenient to see reused a thread id for threads that are finished to fast. Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25example: timer: free resources while terminationIvan Khoronzhuk
Example should free resources in right order when terminates. Also it should have correct error path. Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25linux-generic: pool: accelerate buffer allocation markingBill Fischofer
Since we're now caching the local thread ID for cache management, use this copy for buffer allocation marking as well to avoid unneeded calls to odp_thread_id() Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org> Reviewed-by: Balasubramanian Manoharan <bala.manoharan@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-25linux-generic: pool: catch duplicate free errors in debug buildsBill Fischofer
Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org> Reviewed-by: Balasubramanian Manoharan <bala.manoharan@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-22validation: pktio: fix check of pktio_stop() called twiceIvan Khoronzhuk
The odp_pktio_stop() called is supposed to return error. Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-22doc: identify asciidocs to search enginesMike Holmes
Search engines are not currently indexing the documentation, add a title and description. Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-and-tested-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-22doc: process: add by-lawsMike Holmes
The by-laws were only recorded as part of the website, move them to git where they can be tracked. Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-22linux-generic: packet: hide frame_len behind accessorZoltan Kiss
The classification code accesses this variable directly, which prevents reusing that code e.g. in ODP-DPDK. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org> Reviewed-by: Balasubramanian Manoharan <bala.manoharan@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-22linux-generic: packet_io: separate locks for RX/TXZoltan Kiss
It's possible that two threads want to use the same packet IO in the same time, but one wants RX while the other wants TX. In this case they would block each other unnecessary on the same lock. This could be seen e.g. with odp_l2fwd. Replace that lock with two new ones for each direction. Most callers need both, but send and receive can work with only one. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-20test: change l2fwd pool sizeZoltan Kiss
The current code looks awkward, it defines pkt.num as 564. Clean that up and set it to 8k to make sure even several big descriptor rings could be accomodated. Signed-off-by: Zoltan Kiss <zoltan.kiss@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-20tests: harmonize posix extensions level definesPetri Savolainen
Allways use _GNU_SOURCE instead of various _POSIX_C_SOURCE defines. Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-20linux-generic: define posix extension level oncePetri Savolainen
Use only one definition for posix extension level. _GNU_SOURCE defines _POSIX_C_SOURCE based on glibc version, and is the only definition needed under Linux. Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com> Reviewed-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-19test/performance: pktio: perform an initial warmup runStuart Haslam
The results from the initial test run are often worse than would normally be expected due to there being no warm up phase. As a simple way to warm up run first test stage twice, ignoring the results of the first run. Signed-off-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-18validation: pktio: don't continue if packet with > MTU is sentIvan Khoronzhuk
If packet with size > MTU is sent the test can crash farther, so better to stop here. Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Reviewed-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-18validation: system: add validation tests for odp_cpu_cycles_ callsIvan Khoronzhuk
https://bugs.linaro.org/show_bug.cgi?id=1906 Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-18linux-generic: init: handle local/global init/term cleanlyBill Fischofer
Restructure odp_init_global() and odp_init_local() so that they recover cleanly if initialization fails. At exit any partial initialization is reversed so that system is in the same state as before the failing call was made. This includes adding dummy termination calls for functions that do not require explicit cleanup for symmetry and future-proofing. Note: This patch partially addresses the issues identified by Bug https://bugs.linaro.org/show_bug.cgi?id=1706 Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org> Reviewed-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-15doc: move api docs to application-api-guideMike Holmes
The other documentation is contained in its own directory, the API guide for the application should be no different. This also makes way for a possible south-bound API for NIC drivers Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-and-tested-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-15test: perf: l2fwd detect missing odp_generatorMike Holmes
The script did not check that the odp_generator was present. Updates to ensure the clean up is always called at EXIT Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-15DEPENDENCIES: add librsvg2-bin to HTMLAnders Roxell
Signed-off-by: Anders Roxell <anders.roxell@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-15example: time: add test of global time API on monotonyIvan Khoronzhuk
This test example uses linux helper functions to schedule worker threads in order to check global time monotony between the threads. Each thread receives event from it's own queue, checks global time on correctness, writes in the buffer new current global time, chooses randomly next thread queue, sends event and waits on next event on it's own queue. Using for each thread it's own queue guarantees that event is read by not the same thread that sends it. When global time source is correct the time received with event by a thread must be less than read on the moment of receiving. Reviewed-and-tested-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@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-13example: classifier: use SCN macro to scan uint32_tNicolas Morey-Chaisemartin
Signed-off-by: Nicolas Morey-Chaisemartin <nmorey@kalray.eu> Reviewed-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-13validation: classification: remove double freesNicolas Morey-Chaisemartin
Signed-off-by: Nicolas Morey-Chaisemartin <nmorey@kalray.eu> Reviewed-by: Balasubramanian Manoharan <bala.manoharan@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-13validation: pktio: test batch receiveStuart Haslam
Modify the tests that currently transmit packets in batches to also receive packets in batches. This adds coverage of odp_queue_deq_multi() and odp_schedule_multi() specifically against a packet input queue, as this doesn't get tested anywhere else in the validation suite. Signed-off-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-13doc: implementers-guide: libC versionChristophe Milard
Limiting the usage of the C library to the functions defined in its C99 version. Signed-off-by: Christophe Milard <christophe.milard@linaro.org> Reviewed-by: Mike Holmes <mike.holmes@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-11validation: time: increase limit to check to 2 resIvan Khoronzhuk
In places of two conversions the error can be up to 2 resolutions, so increase validation range to 2 res. Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-11validation: time: round up resolutionIvan Khoronzhuk
While division the resolution can have fractional part, so better to round it up, when it's needed. Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-11validation: time: store local and global resolutionNicolas Morey-Chaisemartin
Computation were done on a local variable and never stored back to the global value so both local_res and global_res were always 0. Reviewed-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Nicolas Morey-Chaisemartin <nmorey@kalray.eu> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-11helper: fix UDP checksum computationGrigore Ion
This patch fixes the following problems: - checksum computation for LE platforms - checksum computation for packets having the UDP length not a multiple of 2 - checksum computation in the test and the example applications Signed-off-by: Grigore Ion <ion.grigore@freescale.com> Reviewed-by: Ilya Maximets <i.maximets@samsung.com> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-11doc: images: refactor makefileMike Holmes
Drop per target rules for generic make Suggested-by: Anders Roxell <anders.roxell@linaro.og> Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-11doc: factor out asciidoc build ruleMike Holmes
Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
2016-01-07doc: implementers: use calloutsMike Holmes
Using callouts relates the diagram to the text much more effectively in the finished document Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-and-tested-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
2016-01-07doc: implementers: fix link to modules listMike Holmes
Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Mike Holmes <mike.holmes@linaro.org>