On 4 May 2016 at 20:38, Brian Brooks <brian.bro...@linaro.org> wrote:

> Reviewed-by: Brian Brooks <brian.bro...@linaro.org>
>
> for the series.
>
> On 05/11 18:41:44, Christophe Milard wrote:
> > Pull can be performed from the URL at the end of this cover letter
> > All patches sent to the list following Maxim's request.
>
> `git merge --squash remote_branch' may be helpful to those reviewing
> pull requests from remotes.
>
> I support this distributed workflow over flooding the list for changes
> which morph the code like this series does.
>
> > Since v5
> > -rebased
> > -patch removing old unused helper code dropped. (Petri)
> > -Doc update to discourage usage of the old functions. (Petri, Mike)
>
> Since this code is not officially part of the ODP API, it may be silly
> to mark deprecated, but an __attribute__((deprecated)) wouldn't hurt.
>
> Is there an existing policy around deprecated behavior? E.g. one ODP
> release's worth of notice for apps to adapt accordingly.
>

yes, there is something already

http://docs.opendataplane.org/snapshots/master/linux-generic/output/release-guide.html#_deprecating_part_of_the_api


>
> > Since v4:
> > -updates following Brian's comments
> >
> > Since v3:
> > -fixed rebase error (Christophe)
> > -rebased
> >
> > Since v2:
> > -serious rebase following clash with dba05a28 (api: init: add instance
> handle)
> > -squashing the validation changes. I am not very keen on squashing
> >  small isolated modifs to larger patches. don't really see the gain.
> >  Squashing more will put even more unrelated things together.
> >
> > Since v1:
> > -variable declaration gathered in function 's head (Petri)
> > -linux prefix removed from helper's types and function names (Mike,
> Christophe)
> >
> > Hi,
> >
> > This patch series adds the ability to run tests/ exemples / perf-test
> > in "process mode" (i.e letting OPD threads being linux processes)
> > It it hence tackling ODP-171.
> >
> > This is achieved in 2 main steps:
> >
> > A]
> > The 2 pairs of helper functions:
> > odph_linux_pthread_create(), odph_linux_pthread_join()
> > and
> > odph_linux_process_fork_n(), odph_linux_process_wait_n()
> > are replaced by:
> > odph_linux_odpthreads_create() and odph_linux_odpthreads_join()
> > The latter's callers are unaware of the actual implementation of the ODP
> > thread (making test truly platform agnostic).
> > The helper functions decide at run time whether an odp thread is to be
> > a linux process or pthread based on the command line argument.
> >
> > B] each test/example now calls a new helper function,
> > odph_linux_parse_options(), so that the helper can get its own arguments
> > out of the command line.
> > Currentely supported args are: --odph_proc, --odph_thread.
> > Defaults assumes thread. specifying both options runs in mixed mode.
> >
> > The changed are first done on the shmem tests, and thereafter propagated
> > to other helper users.
> > Note that this patch series enable the option but does not affect
> > make check at this time: make check still calls the tests with no options
> > which default to thread mode.
> >
> > This patch series nicely splits it two groups (you can split your review
> > there):
> > 1) up to "validation: pktio: adding command line argument parsing", the
> new
> > helper functions are introduced, and used in the validation tests.
> > 2) from "helper: adding a function to merge getopt parameters" the
> ability
> > to parse command line arguments in subset in added and applied to
> > the example and performance tests.
> >
> > Hope this makes sence for you too!
> >
> >
> > [GIT PULL ODPv6] running things in process mode:
> >
> > The following changes since commit
> 24fdbb5060e8702a808a8e2e674521df50e8e830:
> >
> >   doc: userguide: trim images for better fit (2016-05-10 06:34:34 -0400)
> >
> > are available in the git repository at:
> >
> >   https://git.linaro.org/people/christophe.milard/odp.git
> test_in_process_mode_v6
> >
> > for you to fetch changes up to f4f4e9e4a1d4304902b50b0d08719c4805ac0a3e:
> >
> >   doc: implementers-guide: adding helper recommendations (2016-05-11
> 18:10:54 +0200)
> >
> > ----------------------------------------------------------------
> > Christophe Milard (38):
> >       helpers: adding command line argument parsing
> >       validation: common: adding command line argument parsing
> >       validation: shmem: adding command line argument parsing
> >       helpers: linux: creating common entry for process and thread
> >       helpers: linux: creating functions to handle odpthreads
> >       helper: test: adding odpthread functions tests
> >       validation: using implementation agnostic function for ODP threads
> >       validation: most tests: adding command line argument parsing
> >       validation: init: adding command line argument parsing
> >       validation: pktio: adding command line argument parsing
> >       helper: adding a function to merge getopt parameters
> >       helper: parsing the complete set of options
> >       performance: odp_scheduling: proc mode done by helper
> >       performance: odp_pktio_perf: using agnostic function for ODP
> threads
> >       performance: odp_pktio_perf: adding helper cmd line parsing
> >       performance: odp_l2fwd: using agnostic function for ODP threads
> >       performance: odp_l2fwd: adding helper cmd line parsing
> >       performance: crypto: using agnostic function for ODP threads
> >       performance: crypto: adding helper cmd line parsing
> >       example: classifier: using agnostic function for ODP threads
> >       example: classifier: adding helper cmd line parsing
> >       example: generator: using agnostic function for ODP threads
> >       example: generator: adding helper cmd line parsing
> >       example: ipsec: using agnostic function for ODP threads
> >       example: ipsec: adding helper cmd line parsing
> >       example: l2fwd_simple: using agnostic function for ODP threads
> >       example: l2fwd_simple: adding helper cmd line parsing
> >       example: pktio: using agnostic function for ODP threads
> >       example: pktio: adding helper cmd line parsing
> >       example: time: using agnostic function for ODP threads
> >       example: time: adding helper cmd line parsing
> >       example: timer: using agnostic function for ODP threads
> >       example: timer: adding helper cmd line parsing
> >       example: switch: using agnostic function for ODP threads
> >       example: switch: adding helper cmd line parsing
> >       linux-generic: test: ringtest: using agnostic function for ODP
> threads
> >       linux-generic: test: ringtest: adding helper cmd line parsing
> >       doc: implementers-guide: adding helper recommendations
> >
> >  doc/implementers-guide/implementers-guide.adoc     |  32 ++
> >  example/classifier/odp_classifier.c                |  39 +--
> >  example/generator/odp_generator.c                  |  45 +--
> >  example/ipsec/odp_ipsec.c                          |  27 +-
> >  example/l2fwd_simple/odp_l2fwd_simple.c            |  47 ++-
> >  example/packet/odp_pktio.c                         |  45 +--
> >  example/switch/odp_switch.c                        |  26 +-
> >  example/time/time_global_test.c                    |  17 +-
> >  example/timer/odp_timer_test.c                     |  26 +-
> >  helper/include/odp/helper/linux.h                  | 136 +++++++-
> >  helper/linux.c                                     | 385
> +++++++++++++++++++++
> >  helper/test/.gitignore                             |   1 +
> >  helper/test/Makefile.am                            |   8 +-
> >  helper/test/odpthreads.c                           | 100 ++++++
> >  helper/test/odpthreads_as_mixed                    |  15 +
> >  helper/test/odpthreads_as_processes                |  15 +
> >  helper/test/odpthreads_as_pthreads                 |  15 +
> >  platform/linux-generic/test/pktio/pktio_run        |  21 +-
> >  platform/linux-generic/test/pktio/pktio_run_dpdk   |  17 +-
> >  platform/linux-generic/test/pktio/pktio_run_netmap |   5 +-
> >  platform/linux-generic/test/pktio/pktio_run_pcap   |   5 +-
> >  platform/linux-generic/test/pktio/pktio_run_tap    |   6 +-
> >  platform/linux-generic/test/ring/ringtest.c        |  24 +-
> >  test/performance/odp_crypto.c                      |  24 +-
> >  test/performance/odp_l2fwd.c                       |  37 +-
> >  test/performance/odp_pktio_perf.c                  |  34 +-
> >  test/performance/odp_scheduling.c                  |  91 ++---
> >  test/validation/atomic/atomic.c                    |  40 ++-
> >  test/validation/atomic/atomic.h                    |   2 +-
> >  test/validation/atomic/atomic_main.c               |   4 +-
> >  test/validation/barrier/barrier.c                  |  14 +-
> >  test/validation/barrier/barrier.h                  |   2 +-
> >  test/validation/barrier/barrier_main.c             |   4 +-
> >  test/validation/buffer/buffer.c                    |  10 +-
> >  test/validation/buffer/buffer.h                    |   2 +-
> >  test/validation/buffer/buffer_main.c               |   4 +-
> >  test/validation/classification/classification.c    |  10 +-
> >  test/validation/classification/classification.h    |   2 +-
> >  .../classification/classification_main.c           |   4 +-
> >  test/validation/common/odp_cunit_common.c          |  24 +-
> >  test/validation/common/odp_cunit_common.h          |   6 +-
> >  test/validation/cpumask/cpumask.c                  |  10 +-
> >  test/validation/cpumask/cpumask.h                  |   2 +-
> >  test/validation/cpumask/cpumask_main.c             |   4 +-
> >  test/validation/crypto/crypto.c                    |   6 +-
> >  test/validation/crypto/crypto.h                    |   2 +-
> >  test/validation/crypto/crypto_main.c               |   4 +-
> >  test/validation/errno/errno.c                      |  10 +-
> >  test/validation/errno/errno.h                      |   2 +-
> >  test/validation/errno/errno_main.c                 |   4 +-
> >  test/validation/hash/hash.c                        |  10 +-
> >  test/validation/hash/hash.h                        |   2 +-
> >  test/validation/hash/hash_main.c                   |   4 +-
> >  test/validation/init/init.c                        |  18 +-
> >  test/validation/init/init.h                        |   6 +-
> >  test/validation/init/init_main_abort.c             |   4 +-
> >  test/validation/init/init_main_log.c               |   4 +-
> >  test/validation/init/init_main_ok.c                |   4 +-
> >  test/validation/lock/lock.c                        |  50 +--
> >  test/validation/lock/lock.h                        |   2 +-
> >  test/validation/lock/lock_main.c                   |   4 +-
> >  test/validation/packet/packet.c                    |  10 +-
> >  test/validation/packet/packet.h                    |   2 +-
> >  test/validation/packet/packet_main.c               |   4 +-
> >  test/validation/pktio/pktio.c                      |  10 +-
> >  test/validation/pktio/pktio.h                      |   2 +-
> >  test/validation/pktio/pktio_main.c                 |   4 +-
> >  test/validation/pool/pool.c                        |  10 +-
> >  test/validation/pool/pool.h                        |   2 +-
> >  test/validation/pool/pool_main.c                   |   4 +-
> >  test/validation/queue/queue.c                      |  10 +-
> >  test/validation/queue/queue.h                      |   2 +-
> >  test/validation/queue/queue_main.c                 |   4 +-
> >  test/validation/random/random.c                    |  10 +-
> >  test/validation/random/random.h                    |   2 +-
> >  test/validation/random/random_main.c               |   4 +-
> >  test/validation/scheduler/scheduler.c              |  18 +-
> >  test/validation/scheduler/scheduler.h              |   2 +-
> >  test/validation/scheduler/scheduler_main.c         |   4 +-
> >  test/validation/shmem/shmem.c                      |  16 +-
> >  test/validation/shmem/shmem.h                      |   2 +-
> >  test/validation/shmem/shmem_main.c                 |   4 +-
> >  test/validation/std_clib/std_clib.c                |  10 +-
> >  test/validation/std_clib/std_clib.h                |   2 +-
> >  test/validation/std_clib/std_clib_main.c           |   4 +-
> >  test/validation/system/system.c                    |  10 +-
> >  test/validation/system/system.h                    |   2 +-
> >  test/validation/system/system_main.c               |   4 +-
> >  test/validation/thread/thread.c                    |  14 +-
> >  test/validation/thread/thread.h                    |   2 +-
> >  test/validation/thread/thread_main.c               |   4 +-
> >  test/validation/time/time.c                        |  10 +-
> >  test/validation/time/time.h                        |   2 +-
> >  test/validation/time/time_main.c                   |   4 +-
> >  test/validation/timer/timer.c                      |  10 +-
> >  test/validation/timer/timer.h                      |   2 +-
> >  test/validation/timer/timer_main.c                 |   4 +-
> >  test/validation/traffic_mngr/traffic_mngr.c        |   6 +-
> >  test/validation/traffic_mngr/traffic_mngr.h        |   2 +-
> >  test/validation/traffic_mngr/traffic_mngr_main.c   |   4 +-
> >  100 files changed, 1336 insertions(+), 409 deletions(-)
> >  create mode 100644 helper/test/odpthreads.c
> >  create mode 100755 helper/test/odpthreads_as_mixed
> >  create mode 100755 helper/test/odpthreads_as_processes
> >  create mode 100755 helper/test/odpthreads_as_pthreads
> > --
> > 2.5.0
> >
>



-- 
Mike Holmes
Technical Manager - Linaro Networking Group
Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs
"Work should be fun and collaborative, the rest follows"
_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to