On 26 January 2016 at 22:45, Mike Holmes <mike.hol...@linaro.org> wrote:

> Inline comment on include structure
>
> On 26 January 2016 at 13:04, Christophe Milard <
> christophe.mil...@linaro.org> wrote:
>
>> This patch series implements a new structure in the ODP repo so that new
>> interfaces can be more easily added to ODP
>>
>> Saddly changing the current structure seems needed as just adding to it
>> results in a quite fuzzy file organisation:
>>
>> Today:
>> include/odp/api is the reference for the ODP API interface.
>
> Platform/linux-generic/include/odp is the platform implementation of the
>> ODP
>> API interface.  The ODP API interface is simply called ODP there.
>> Having the same name (ODP) for the whole ODP and one of its API result in
>> a
>> quite messy organisation.
>> Moreover, with the current structure, a new interface cannot be named the
>> same
>> on the platform side as on the reference side because the directory name
>> is
>> what is used to distinguish the files at include time (hence the 2 names
>> today):
>> A new interface (e.g. defined in include/odp/drv) cannot be called
>> Platform/linux-generic/include/odp/drv on the platform side as the
>> statement
>> include <odp/drv> would be ambiguous.
>> And this make the driver interface appear as a sub interface of the API,
>> which does not reflect any reality.
>> I have tried a few variant of this, none of which gave me enough
>> satisfaction.
>>
>> These patches:
>> Aims to having a way to get following structures
>> (for two interfaces: api and drv):
>>
>>
>
> In the repo:
>> ./
>> ├── include/
>> │   └── odp/
>> │       ├── api/      <-- this was old bad thinking, there is more than
>> one api now,  so this is the application or app directory
>> │       │   └── ref/  <- this is the odp/app/api, it is not a reference
>> it is the api for apps
>> │       ├── api.h
>> │       ├── drv/
>> │       │   └── ref/ <- this is the odp/drv/api, it is not a reference it
>> is the api for drivers
>> │       └── drv.h
>>
>
> I don't mind changing api to app if that is more popular.

But, regarding the ref->api change: API stands for Application Programming
Interface. Isn't it confusing to have an Application Programming Interface
for drivers and an Application Programming Interface for applications?
I am not sure why you don't see these files as a reference as this is what
the implementations should comply to, and I don't mind changing the name
either, but I don't like API: are drivers applications?
shouldn't be called DPI then, as this actually is the Driver programming
interface. not the application....
But of course, we want one single common name: the reference files (or
whatever we want to call them) should be called:
include/odp/api/something and include/odp/drv/something. That "something"
should be the same thing. A name telling that these files comes from the
Interface reference/public/ definition.
The path already says what interface we talk about (api/drv)

if "ref", which make more sense for me is not popular, I think "pub" (for
public) is a better alternative than api. Even if the references files have
been called api up to now.

Christophe.


>
>> └── platform/
>>     └── linux-generic/
>>         └── include/
>>             └── odp/
>>                 ├── api/
>>                 │   └── plat/
>>                 ├── com/
>>                 │   └── plat/
>>                 └── drv/
>>                     └── plat/
>>
>> Once installed:
>> ./
>> └── include/
>>     └── odp/
>>         ├── api/
>>         │   ├── plat/
>>         │   └── ref/
>>         ├── api.h
>>         ├── com/
>>         │   └── plat/
>>         ├── drv/
>>         │   ├── plat/
>>         │   └── ref/
>>         └── drv.h
>>
>> These patches do not create the drv interface: they just move around
>> the existing structure (the ODP API includes files) according to the above
>> trees. Patch 3 updates the docs with a view of the new structure (without
>> the
>> drv interface). New patches will be sent to create the new interface and
>> update the documentation accordinally if this new structure gets approved.
>>
>> With this new structure, each interface can get its own directory.
>>
>> The com/ directory is meant to contain things which can be shared between
>> two (or more) interfaces. It is only present in the platform side as the
>> definition of each interface is assumed to be "stand alone" (non-leaking)
>>
>> The odp/<interface>/ref/ directory contains the interface platform
>> agnostic
>> definition, the reference.
>> e.g. include/odp/api/ref/ now contains what used to be located in
>> include/odp/api.
>>
>> The plat directory has the same meaning as before: it is just moved one
>> step
>> down to the interface it belongs to.
>>
>> The advantage of this new structure (compared to adding to the current
>> one)
>> is that things get more clearly defined:
>> * ODP means the whole ODP, not two things (ODP or the API interface of
>> it):
>> There is still an exception to that: the prefix used by the applications
>> is
>> still odp_ (and not odpapi_ as a pure logical approach would suggest.
>> Maybe
>> this is acceptable... as the api remains the ODP "main" interface. If not,
>> that could be a separate patch). New interfaces, such as drv should surely
>> get a prefix as odpdrv_* in the future)
>> * there is some nice symetry between the repo and the installation
>> directories.
>> * there is one single name per interface (api or drv in the exemple)
>>
>> Compared to my first RFC, this approach separates more clearly the
>> different
>> interfaces, in different directories. There will be a small price for
>> that as
>> functionality common to many interfaces will have to be wrapped,
>> cross-references or duplicated. This may introduce complexity in each
>> implementation, but has no reason to leak on the interfaces definition,
>> as far as I can see.
>>
>> Patches 1 and 2 touch quite many files, and will probably not apply
>> nicely. They will apply on hash 9a6e951cbbe99fddd4eb8a4f6dcc810e493f6787.
>> Patch 3 (doc) is "manual".
>>
>> The script performing the modifications for the two first patches follows:
>> (maybe used for review or merging time)
>>
>> ################################################################
>> #      PATCH 1:
>> #      platform/X/includes/odp mv to platform/X/includes/odp/api
>> #      includes/odp/api mv to includes/odp/api/ref
>> ################################################################
>> #Today's platform/X/includes/odp actually describes the API interface of
>> ODP
>> #and is therefore moved to platform/X/includes/odp/api:
>>
>> #the reference include/odp/api now moves to include/odp/api/ref
>> # - create the dir:
>> mkdir platform/linux-generic/include/odp/api
>>
>> # - move .../odp/* to .../odp/api/* , omiting errors (api cannot be moved
>> to itself)
>> git mv -k platform/linux-generic/include/odp/*
>> platform/linux-generic/include/odp/api
>>
>> # - change "include <odp/helper>" to "include <odX/helper>", so that
>> further sed wont affect them:
>> #   this is changed back to what it was later in this script
>> git grep -l "odp/helper" | egrep -e '(.*\.c$)|(.*\.h$)' | xargs sed -i -e
>> 's:#include\(.*\)odp/helper\(.*\):#include\1odX/helper\2:'
>>
>> # - change "include <odp/XXX>" to "include <odY/XXX>", for each XXX h
>> files from the ARCH directory so that further sed wont affect them:
>> #   this is changed back to what it was later in this script
>> for a in `find platform/linux-generic/arch -name '*.h' | xargs -i
>> basename {} |sort -u`;
>> do
>>   git grep -l "odp/$a" | egrep -e '(.*\.c$)|(.*\.h$)' | xargs sed -i -e
>> "s:#include\(.*\)odp/$a\(.*\):#include\1odY/$a\2:"
>> done
>>
>> # - change "include <odp/api>" to "include <odX/api>", so that further
>> sed wont affect them:
>> #   this is changed to <odp/api/ref/*> later in this script
>> git grep -l "odp/api" | egrep -e '(.*\.c$)|(.*\.h$)' | xargs sed -i -e
>> 's:#include\(.*\)odp/api\(.*\):#include\1odX/api\2:'
>>
>> # - change the remaining "include <odp/*>" to "include <odp/api/*>"
>> git grep -l "include.*odp" | egrep -e '(.*\.c$)|(.*\.h$)' | xargs sed -i
>> -e 's:#include\(.*\)odp/\(.*\):#include\1odp/api/\2:'
>>
>> # - change the former "include <odX/api/*>" to "include <odp/api/ref/*>"
>> git grep -l "include.*odX/api" | egrep -e '(.*\.c$)|(.*\.h$)' | xargs sed
>> -i -e 's:#include\(.*\)odX/api/\(.*\):#include\1odp/api/ref/\2:'
>>
>> # - change "include <odX/helper>" back to "include <odp/helper>"
>> git grep -l "odX/helper" | egrep -e '(.*\.c$)|(.*\.h$)' | xargs sed -i -e
>> 's:#include\(.*\)odX/helper\(.*\):#include\1odp/helper\2:'
>>
>> # - change "include <odY/XXX>" back to "include <odp/XXX>", for ARCH
>> includes
>> git grep -l "include.*odY/" | egrep -e '(.*\.c$)|(.*\.h$)' | xargs sed -i
>> -e 's:#include\(.*\)odY/\(.*\):#include\1odp/\2:'
>>
>> # - create include/odp/api/ref and move include/odp/api/* to
>> include/odp/api/ref
>> mkdir include/odp/api/ref
>> git mv  -k include/odp/api/* include/odp/api/ref
>>
>> # - in platform/linux-generic/Makefile.am, rename odpinclude to
>> odpapiinclude, as this regards only the API
>> sed -i -e 's:odpinclude:odpapiinclude:' platform/linux-generic/Makefile.am
>> # - move down the installation dir one step:
>> sed -i -e 's:odpapiincludedir\(.*\):odpapiincludedir\1/api:'
>> platform/linux-generic/Makefile.am
>>
>> # - in platform/linux-generic/Makefile.am, rename odpplatinclude to
>> odpapiplatinclude, as this regards only the API
>> sed -i -e 's:odpplatinclude:odpapiplatinclude:'
>> platform/linux-generic/Makefile.am
>> # - move down the installation dir one step:
>> sed -i -e
>> 's:odpapiplatincludedir\(.*\)/odp/plat:odpapiplatincludedir\1/odp/api/plat:'
>> platform/linux-generic/Makefile.am
>>
>> # - in platform/linux-generic/Makefile.am, push the platform plat headers
>> down one step: $(srcdir)/include/odp/plat/* ->
>> $(srcdir)/include/odp/api/plat/*
>> sed -i -e'/odpapiplatinclude_HEADERS/,/^$/s:odp/:odp/api/:'
>> platform/linux-generic/Makefile.am
>>
>> # - in platform/linux-generic/Makefile.am, push the platform main headers
>> down one step: $(srcdir)/include/odp/* -> $(srcdir)/include/odp/api/*. Not
>> for ARCH
>> sed -i -e'/odpapiinclude_HEADERS/,/^$/s:odp/:odp/api/:'
>> platform/linux-generic/Makefile.am
>> sed -i -e'/odpapiinclude_HEADERS/,/^$/s:(srcdir)/arch/@ARCH@
>> /odp/api/:(srcdir)/arch/@ARCH@/odp/:' platform/linux-generic/Makefile.am
>>
>> # - in platform/Makefile.inc change odpapiinclude to odpapirefinclude,
>> because these are the reference files.
>> sed -i -e 's:odpapiinclude:odpapirefinclude:' platform/Makefile.inc
>>
>> # - in platform/Makefile.inc change the installation dir path for
>> odpapirefincludedir to include/odp/api/ref
>> sed -i -e 's:odpapirefincludedir\(.*\):odpapirefincludedir\1/ref:'
>> platform/Makefile.inc
>>
>> # - in platform/Makefile.inc change odpapiinclude to odpapirefinclude,
>> because these are the reference files.
>> sed -i -e'/odpapirefinclude_HEADERS/,/^$/s:odp/api/:odp/api/ref/:'
>> platform/Makefile.inc
>>
>>
>> ################################################################
>> #      PATCH 2:
>> #      mv odp.h one step down, as odp/api.h.
>> ################################################################
>> #move odp.h one step down:
>> git mv include/odp.h include/odp/api.h
>> #change all include <odp.h> to include <odp/api.h>
>> git grep -l 'include.*odp\.h[>"]' | egrep -e
>> '(.*\.c$)|(.*\.h$)|(.*\.cpp$)' | xargs sed -i -e
>> 's:#include\(.*\)odp\.h\(.*\):#include\1odp/api\.h\2:'
>> #change the makefile
>> sed -i -e 's:include\(.*\)odp\.h\(.*\):include\1odp/api\.h\2:'
>> platform/linux-generic/Makefile.am
>> sed -i -e 's:^include_HEADERS:odpinclude_HEADERS:'
>> platform/linux-generic/Makefile.am
>> sed -i -e '/^odpinclude_HEADERS/iodpincludedir = $(includedir)/odp'
>> platform/linux-generic/Makefile.am
>>
>>
>>
>> Christophe Milard (3):
>>   api and linux-generic: make room for new api
>>   api: move include/odp.h to include/odp/api.h
>>   doc: updates following new structure
>>
>>  doc/implementers-guide/implementers-guide.adoc     |  74 +++++-----
>>  doc/users-guide/users-guide.adoc                   |  15 ++-
>>  example/classifier/odp_classifier.c                |   2 +-
>>  example/generator/odp_generator.c                  |   2 +-
>>  example/ipsec/odp_ipsec.c                          |   2 +-
>>  example/ipsec/odp_ipsec_cache.c                    |   2 +-
>>  example/ipsec/odp_ipsec_cache.h                    |   2 +-
>>  example/ipsec/odp_ipsec_fwd_db.c                   |   2 +-
>>  example/ipsec/odp_ipsec_fwd_db.h                   |   2 +-
>>  example/ipsec/odp_ipsec_loop_db.c                  |   2 +-
>>  example/ipsec/odp_ipsec_loop_db.h                  |   2 +-
>>  example/ipsec/odp_ipsec_misc.h                     |   2 +-
>>  example/ipsec/odp_ipsec_sa_db.c                    |   2 +-
>>  example/ipsec/odp_ipsec_sp_db.c                    |   2 +-
>>  example/ipsec/odp_ipsec_stream.c                   |   2 +-
>>  example/ipsec/odp_ipsec_stream.h                   |   2 +-
>>  example/packet/odp_pktio.c                         |   2 +-
>>  example/time/time_global_test.c                    |   2 +-
>>  example/timer/odp_timer_test.c                     |   2 +-
>>  example/traffic_mgmt/odp_traffic_mgmt.c            |   4 +-
>>  helper/hashtable.c                                 |   2 +-
>>  helper/include/odp/helper/chksum.h                 |   2 +-
>>  helper/include/odp/helper/eth.h                    |   8 +-
>>  helper/include/odp/helper/icmp.h                   |   6 +-
>>  helper/include/odp/helper/ip.h                     |   6 +-
>>  helper/include/odp/helper/ipsec.h                  |   8 +-
>>  helper/include/odp/helper/linux.h                  |   2 +-
>>  helper/include/odp/helper/ring.h                   |   6 +-
>>  helper/include/odp/helper/tcp.h                    |   6 +-
>>  helper/include/odp/helper/udp.h                    |   6 +-
>>  helper/lineartable.c                               |   2 +-
>>  helper/linux.c                                     |   6 +-
>>  helper/ring.c                                      |   2 +-
>>  helper/test/odp_chksum.c                           |   2 +-
>>  helper/test/odp_process.c                          |   2 +-
>>  helper/test/odp_table.c                            |   2 +-
>>  helper/test/odp_thread.c                           |   2 +-
>>  include/odp.h                                      |  66 ---------
>>  include/odp/api.h                                  |  66 +++++++++
>>  include/odp/api/{ => ref}/align.h                  |   0
>>  include/odp/api/{ => ref}/atomic.h                 |   0
>>  include/odp/api/{ => ref}/barrier.h                |   0
>>  include/odp/api/{ => ref}/buffer.h                 |   0
>>  include/odp/api/{ => ref}/byteorder.h              |   0
>>  include/odp/api/{ => ref}/classification.h         |   0
>>  include/odp/api/{ => ref}/compiler.h               |   0
>>  include/odp/api/{ => ref}/config.h                 |   0
>>  include/odp/api/{ => ref}/cpu.h                    |   2 +-
>>  include/odp/api/{ => ref}/cpumask.h                |   2 +-
>>  include/odp/api/{ => ref}/crypto.h                 |   0
>>  include/odp/api/{ => ref}/debug.h                  |   0
>>  include/odp/api/{ => ref}/errno.h                  |   0
>>  include/odp/api/{ => ref}/event.h                  |   0
>>  include/odp/api/{ => ref}/hash.h                   |   2 +-
>>  include/odp/api/{ => ref}/hints.h                  |   0
>>  include/odp/api/{ => ref}/init.h                   |   6 +-
>>  include/odp/api/{ => ref}/packet.h                 |   0
>>  include/odp/api/{ => ref}/packet_flags.h           |   4 +-
>>  include/odp/api/{ => ref}/packet_io.h              |   4 +-
>>  include/odp/api/{ => ref}/packet_io_stats.h        |   0
>>  include/odp/api/{ => ref}/pool.h                   |   2 +-
>>  include/odp/api/{ => ref}/queue.h                  |   4 +-
>>  include/odp/api/{ => ref}/random.h                 |   0
>>  include/odp/api/{ => ref}/rwlock.h                 |   0
>>  include/odp/api/{ => ref}/rwlock_recursive.h       |   0
>>  include/odp/api/{ => ref}/schedule.h               |  10 +-
>>  include/odp/api/{ => ref}/schedule_types.h         |   0
>>  include/odp/api/{ => ref}/shared_memory.h          |   0
>>  include/odp/api/{ => ref}/spinlock.h               |   0
>>  include/odp/api/{ => ref}/spinlock_recursive.h     |   0
>>  include/odp/api/{ => ref}/std_clib.h               |   0
>>  include/odp/api/{ => ref}/std_types.h              |   0
>>  include/odp/api/{ => ref}/sync.h                   |   0
>>  include/odp/api/{ => ref}/system_info.h            |   0
>>  include/odp/api/{ => ref}/thread.h                 |   0
>>  include/odp/api/{ => ref}/thrmask.h                |   2 +-
>>  include/odp/api/{ => ref}/ticketlock.h             |   0
>>  include/odp/api/{ => ref}/time.h                   |   0
>>  include/odp/api/{ => ref}/timer.h                  |   0
>>  include/odp/api/{ => ref}/traffic_mngr.h           |   4 +-
>>  include/odp/api/{ => ref}/version.h                |   0
>>  platform/Makefile.inc                              |  88 ++++++------
>>  platform/linux-generic/Makefile.am                 | 149
>> +++++++++++----------
>>  platform/linux-generic/arch/linux/odp_cpu_arch.c   |   6 +-
>>  platform/linux-generic/arch/mips64/odp_cpu_arch.c  |   6 +-
>>  platform/linux-generic/arch/x86/odp_cpu_arch.c     |   2 +-
>>  .../linux-generic/include/odp/{ => api}/align.h    |   2 +-
>>  .../linux-generic/include/odp/{ => api}/atomic.h   |   6 +-
>>  .../linux-generic/include/odp/{ => api}/barrier.h  |   8 +-
>>  .../linux-generic/include/odp/{ => api}/buffer.h   |  10 +-
>>  .../include/odp/{ => api}/byteorder.h              |   8 +-
>>  .../include/odp/{ => api}/classification.h         |  14 +-
>>  .../linux-generic/include/odp/{ => api}/compiler.h |   2 +-
>>  .../linux-generic/include/odp/{ => api}/config.h   |   2 +-
>>  platform/linux-generic/include/odp/{ => api}/cpu.h |   2 +-
>>  .../linux-generic/include/odp/{ => api}/cpumask.h  |   6 +-
>>  .../linux-generic/include/odp/{ => api}/crypto.h   |  14 +-
>>  .../linux-generic/include/odp/{ => api}/debug.h    |   2 +-
>>  .../linux-generic/include/odp/{ => api}/errno.h    |   2 +-
>>  .../linux-generic/include/odp/{ => api}/event.h    |   4 +-
>>  .../linux-generic/include/odp/{ => api}/hash.h     |   2 +-
>>  .../linux-generic/include/odp/{ => api}/hints.h    |   2 +-
>>  .../linux-generic/include/odp/{ => api}/init.h     |   4 +-
>>  .../linux-generic/include/odp/{ => api}/packet.h   |  14 +-
>>  .../include/odp/{ => api}/packet_flags.h           |   2 +-
>>  .../include/odp/{ => api}/packet_io.h              |  14 +-
>>  .../include/odp/{ => api}/plat/atomic_types.h      |   2 +-
>>  .../include/odp/{ => api}/plat/barrier_types.h     |   4 +-
>>  .../include/odp/{ => api}/plat/buffer_types.h      |   4 +-
>>  .../include/odp/{ => api}/plat/byteorder_types.h   |   0
>>  .../odp/{ => api}/plat/classification_types.h      |   2 +-
>>  .../include/odp/{ => api}/plat/cpumask_types.h     |   2 +-
>>  .../include/odp/{ => api}/plat/crypto_types.h      |   0
>>  .../include/odp/{ => api}/plat/event_types.h       |   4 +-
>>  .../include/odp/{ => api}/plat/init_types.h        |   0
>>  .../include/odp/{ => api}/plat/packet_io_types.h   |   4 +-
>>  .../include/odp/{ => api}/plat/packet_types.h      |   4 +-
>>  .../include/odp/{ => api}/plat/pool_types.h        |   6 +-
>>  .../include/odp/{ => api}/plat/queue_types.h       |   4 +-
>>  .../odp/{ => api}/plat/rwlock_recursive_types.h    |   6 +-
>>  .../include/odp/{ => api}/plat/rwlock_types.h      |   2 +-
>>  .../include/odp/{ => api}/plat/schedule_types.h    |   0
>>  .../odp/{ => api}/plat/shared_memory_types.h       |   4 +-
>>  .../odp/{ => api}/plat/spinlock_recursive_types.h  |   4 +-
>>  .../include/odp/{ => api}/plat/spinlock_types.h    |   2 +-
>>  .../include/odp/{ => api}/plat/strong_types.h      |   0
>>  .../include/odp/{ => api}/plat/thread_types.h      |   0
>>  .../include/odp/{ => api}/plat/thrmask_types.h     |   2 +-
>>  .../include/odp/{ => api}/plat/ticketlock_types.h  |   2 +-
>>  .../include/odp/{ => api}/plat/time_types.h        |   0
>>  .../include/odp/{ => api}/plat/timer_types.h       |   0
>>  .../odp/{ => api}/plat/traffic_mngr_types.h        |   4 +-
>>  .../include/odp/{ => api}/plat/version_types.h     |   0
>>  .../linux-generic/include/odp/{ => api}/pool.h     |   8 +-
>>  .../linux-generic/include/odp/{ => api}/queue.h    |  12 +-
>>  .../linux-generic/include/odp/{ => api}/random.h   |   2 +-
>>  .../linux-generic/include/odp/{ => api}/rwlock.h   |   4 +-
>>  .../include/odp/{ => api}/rwlock_recursive.h       |   4 +-
>>  .../linux-generic/include/odp/{ => api}/schedule.h |   4 +-
>>  .../include/odp/{ => api}/schedule_types.h         |   4 +-
>>  .../include/odp/{ => api}/shared_memory.h          |   4 +-
>>  .../linux-generic/include/odp/{ => api}/spinlock.h |   4 +-
>>  .../include/odp/{ => api}/spinlock_recursive.h     |   4 +-
>>  .../linux-generic/include/odp/{ => api}/std_clib.h |   2 +-
>>  .../include/odp/{ => api}/std_types.h              |   2 +-
>>  .../linux-generic/include/odp/{ => api}/sync.h     |   2 +-
>>  .../include/odp/{ => api}/system_info.h            |   4 +-
>>  .../linux-generic/include/odp/{ => api}/thread.h   |   4 +-
>>  .../linux-generic/include/odp/{ => api}/thrmask.h  |   4 +-
>>  .../include/odp/{ => api}/ticketlock.h             |   4 +-
>>  .../linux-generic/include/odp/{ => api}/time.h     |   6 +-
>>  .../linux-generic/include/odp/{ => api}/timer.h    |  12 +-
>>  .../include/odp/{ => api}/traffic_mngr.h           |   4 +-
>>  .../linux-generic/include/odp/{ => api}/version.h  |   4 +-
>>  .../linux-generic/include/odp_align_internal.h     |   2 +-
>>  .../linux-generic/include/odp_atomic_internal.h    |   8 +-
>>  .../linux-generic/include/odp_buffer_internal.h    |  20 +--
>>  .../include/odp_classification_datamodel.h         |   4 +-
>>  .../include/odp_classification_inlines.h           |   2 +-
>>  .../include/odp_classification_internal.h          |   6 +-
>>  .../linux-generic/include/odp_debug_internal.h     |   2 +-
>>  platform/linux-generic/include/odp_internal.h      |   4 +-
>>  .../include/odp_name_table_internal.h              |   2 +-
>>  .../linux-generic/include/odp_packet_internal.h    |  10 +-
>>  .../linux-generic/include/odp_packet_io_internal.h |   8 +-
>>  platform/linux-generic/include/odp_packet_netmap.h |  10 +-
>>  platform/linux-generic/include/odp_packet_socket.h |  12 +-
>>  platform/linux-generic/include/odp_packet_tap.h    |   2 +-
>>  .../linux-generic/include/odp_pkt_queue_internal.h |   2 +-
>>  platform/linux-generic/include/odp_pool_internal.h |  22 +--
>>  .../linux-generic/include/odp_queue_internal.h     |  12 +-
>>  .../linux-generic/include/odp_schedule_internal.h  |   6 +-
>>  .../linux-generic/include/odp_timer_internal.h     |   6 +-
>>  .../include/odp_timer_wheel_internal.h             |   2 +-
>>  .../include/odp_traffic_mngr_internal.h            |   4 +-
>>  platform/linux-generic/odp_atomic.c                |   2 +-
>>  platform/linux-generic/odp_barrier.c               |   6 +-
>>  platform/linux-generic/odp_buffer.c                |   2 +-
>>  platform/linux-generic/odp_classification.c        |  14 +-
>>  platform/linux-generic/odp_cpu.c                   |   4 +-
>>  platform/linux-generic/odp_cpumask.c               |   2 +-
>>  platform/linux-generic/odp_cpumask_task.c          |   2 +-
>>  platform/linux-generic/odp_crypto.c                |  18 +--
>>  platform/linux-generic/odp_errno.c                 |   2 +-
>>  platform/linux-generic/odp_event.c                 |  12 +-
>>  platform/linux-generic/odp_hash.c                  |   4 +-
>>  platform/linux-generic/odp_impl.c                  |   2 +-
>>  platform/linux-generic/odp_init.c                  |   4 +-
>>  platform/linux-generic/odp_packet.c                |   6 +-
>>  platform/linux-generic/odp_packet_flags.c          |   2 +-
>>  platform/linux-generic/odp_packet_io.c             |  12 +-
>>  platform/linux-generic/odp_pkt_queue.c             |   2 +-
>>  platform/linux-generic/odp_pool.c                  |  14 +-
>>  platform/linux-generic/odp_queue.c                 |  24 ++--
>>  platform/linux-generic/odp_rwlock.c                |   6 +-
>>  platform/linux-generic/odp_rwlock_recursive.c      |   4 +-
>>  platform/linux-generic/odp_schedule.c              |  24 ++--
>>  platform/linux-generic/odp_shared_memory.c         |  12 +-
>>  platform/linux-generic/odp_sorted_list.c           |   2 +-
>>  platform/linux-generic/odp_spinlock.c              |   4 +-
>>  platform/linux-generic/odp_spinlock_recursive.c    |   4 +-
>>  platform/linux-generic/odp_system_info.c           |   6 +-
>>  platform/linux-generic/odp_thread.c                |  14 +-
>>  platform/linux-generic/odp_thrmask.c               |   4 +-
>>  platform/linux-generic/odp_ticketlock.c            |   8 +-
>>  platform/linux-generic/odp_time.c                  |   4 +-
>>  platform/linux-generic/odp_timer.c                 |  30 ++---
>>  platform/linux-generic/odp_timer_wheel.c           |   2 +-
>>  platform/linux-generic/odp_traffic_mngr.c          |   2 +-
>>  platform/linux-generic/odp_version.c               |   2 +-
>>  platform/linux-generic/odp_weak.c                  |   4 +-
>>  platform/linux-generic/pktio/loop.c                |   4 +-
>>  platform/linux-generic/pktio/pcap.c                |   2 +-
>>  platform/linux-generic/pktio/socket.c              |   4 +-
>>  platform/linux-generic/pktio/socket_mmap.c         |   4 +-
>>  platform/linux-generic/pktio/tap.c                 |   2 +-
>>  test/api_test/odp_common.c                         |   2 +-
>>  test/api_test/odp_ring_test.c                      |   2 +-
>>  test/miscellaneous/odp_api_from_cpp.cpp            |   2 +-
>>  test/performance/odp_atomic.c                      |   2 +-
>>  test/performance/odp_l2fwd.c                       |   2 +-
>>  test/performance/odp_pktio_perf.c                  |   2 +-
>>  test/performance/odp_scheduling.c                  |   2 +-
>>  test/validation/atomic/atomic.c                    |   2 +-
>>  test/validation/barrier/barrier.c                  |   2 +-
>>  test/validation/buffer/buffer.c                    |   2 +-
>>  test/validation/classification/classification.c    |   2 +-
>>  .../classification/odp_classification_testsuites.h |   2 +-
>>  test/validation/common/mask_common.c               |   2 +-
>>  test/validation/common/odp_cunit_common.c          |   2 +-
>>  test/validation/config/config.c                    |   2 +-
>>  test/validation/cpumask/cpumask.c                  |   2 +-
>>  test/validation/cpumask/cpumask.h                  |   2 +-
>>  test/validation/crypto/crypto.c                    |   2 +-
>>  test/validation/crypto/odp_crypto_test_inp.c       |   2 +-
>>  test/validation/errno/errno.c                      |   2 +-
>>  test/validation/hash/hash.c                        |   2 +-
>>  test/validation/init/init.c                        |   2 +-
>>  test/validation/lock/lock.c                        |   2 +-
>>  test/validation/packet/packet.c                    |   2 +-
>>  test/validation/pktio/pktio.c                      |   2 +-
>>  test/validation/pool/pool.c                        |   2 +-
>>  test/validation/queue/queue.c                      |   2 +-
>>  test/validation/random/random.c                    |   2 +-
>>  test/validation/scheduler/scheduler.c              |   2 +-
>>  test/validation/shmem/shmem.c                      |   2 +-
>>  test/validation/std_clib/std_clib.c                |   2 +-
>>  test/validation/system/system.c                    |   4 +-
>>  test/validation/thread/thread.c                    |   2 +-
>>  test/validation/thread/thread.h                    |   2 +-
>>  test/validation/time/time.c                        |   2 +-
>>  test/validation/timer/timer.c                      |   2 +-
>>  252 files changed, 711 insertions(+), 693 deletions(-)
>>  delete mode 100644 include/odp.h
>>  create mode 100644 include/odp/api.h
>>  rename include/odp/api/{ => ref}/align.h (100%)
>>  rename include/odp/api/{ => ref}/atomic.h (100%)
>>  rename include/odp/api/{ => ref}/barrier.h (100%)
>>  rename include/odp/api/{ => ref}/buffer.h (100%)
>>  rename include/odp/api/{ => ref}/byteorder.h (100%)
>>  rename include/odp/api/{ => ref}/classification.h (100%)
>>  rename include/odp/api/{ => ref}/compiler.h (100%)
>>  rename include/odp/api/{ => ref}/config.h (100%)
>>  rename include/odp/api/{ => ref}/cpu.h (99%)
>>  rename include/odp/api/{ => ref}/cpumask.h (99%)
>>  rename include/odp/api/{ => ref}/crypto.h (100%)
>>  rename include/odp/api/{ => ref}/debug.h (100%)
>>  rename include/odp/api/{ => ref}/errno.h (100%)
>>  rename include/odp/api/{ => ref}/event.h (100%)
>>  rename include/odp/api/{ => ref}/hash.h (98%)
>>  rename include/odp/api/{ => ref}/hints.h (100%)
>>  rename include/odp/api/{ => ref}/init.h (98%)
>>  rename include/odp/api/{ => ref}/packet.h (100%)
>>  rename include/odp/api/{ => ref}/packet_flags.h (99%)
>>  rename include/odp/api/{ => ref}/packet_io.h (99%)
>>  rename include/odp/api/{ => ref}/packet_io_stats.h (100%)
>>  rename include/odp/api/{ => ref}/pool.h (99%)
>>  rename include/odp/api/{ => ref}/queue.h (99%)
>>  rename include/odp/api/{ => ref}/random.h (100%)
>>  rename include/odp/api/{ => ref}/rwlock.h (100%)
>>  rename include/odp/api/{ => ref}/rwlock_recursive.h (100%)
>>  rename include/odp/api/{ => ref}/schedule.h (98%)
>>  rename include/odp/api/{ => ref}/schedule_types.h (100%)
>>  rename include/odp/api/{ => ref}/shared_memory.h (100%)
>>  rename include/odp/api/{ => ref}/spinlock.h (100%)
>>  rename include/odp/api/{ => ref}/spinlock_recursive.h (100%)
>>  rename include/odp/api/{ => ref}/std_clib.h (100%)
>>  rename include/odp/api/{ => ref}/std_types.h (100%)
>>  rename include/odp/api/{ => ref}/sync.h (100%)
>>  rename include/odp/api/{ => ref}/system_info.h (100%)
>>  rename include/odp/api/{ => ref}/thread.h (100%)
>>  rename include/odp/api/{ => ref}/thrmask.h (99%)
>>  rename include/odp/api/{ => ref}/ticketlock.h (100%)
>>  rename include/odp/api/{ => ref}/time.h (100%)
>>  rename include/odp/api/{ => ref}/timer.h (100%)
>>  rename include/odp/api/{ => ref}/traffic_mngr.h (99%)
>>  rename include/odp/api/{ => ref}/version.h (100%)
>>  rename platform/linux-generic/include/odp/{ => api}/align.h (97%)
>>  rename platform/linux-generic/include/odp/{ => api}/atomic.h (98%)
>>  rename platform/linux-generic/include/odp/{ => api}/barrier.h (66%)
>>  rename platform/linux-generic/include/odp/{ => api}/buffer.h (66%)
>>  rename platform/linux-generic/include/odp/{ => api}/byteorder.h (95%)
>>  rename platform/linux-generic/include/odp/{ => api}/classification.h
>> (57%)
>>  rename platform/linux-generic/include/odp/{ => api}/compiler.h (91%)
>>  rename platform/linux-generic/include/odp/{ => api}/config.h (99%)
>>  rename platform/linux-generic/include/odp/{ => api}/cpu.h (91%)
>>  rename platform/linux-generic/include/odp/{ => api}/cpumask.h (76%)
>>  rename platform/linux-generic/include/odp/{ => api}/crypto.h (57%)
>>  rename platform/linux-generic/include/odp/{ => api}/debug.h (90%)
>>  rename platform/linux-generic/include/odp/{ => api}/errno.h (90%)
>>  rename platform/linux-generic/include/odp/{ => api}/event.h (82%)
>>  rename platform/linux-generic/include/odp/{ => api}/hash.h (91%)
>>  rename platform/linux-generic/include/odp/{ => api}/hints.h (91%)
>>  rename platform/linux-generic/include/odp/{ => api}/init.h (83%)
>>  rename platform/linux-generic/include/odp/{ => api}/packet.h (56%)
>>  rename platform/linux-generic/include/odp/{ => api}/packet_flags.h (90%)
>>  rename platform/linux-generic/include/odp/{ => api}/packet_io.h (56%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/atomic_types.h
>> (98%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/barrier_types.h
>> (89%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/buffer_types.h
>> (91%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/byteorder_types.h (100%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/classification_types.h (96%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/cpumask_types.h
>> (95%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/crypto_types.h
>> (100%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/event_types.h
>> (91%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/init_types.h
>> (100%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/packet_io_types.h (93%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/packet_types.h
>> (94%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/pool_types.h
>> (87%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/queue_types.h
>> (93%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/rwlock_recursive_types.h (88%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/rwlock_types.h
>> (94%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/schedule_types.h (100%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/shared_memory_types.h (90%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/spinlock_recursive_types.h (90%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/spinlock_types.h (93%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/strong_types.h
>> (100%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/thread_types.h
>> (100%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/thrmask_types.h
>> (95%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/ticketlock_types.h (94%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/time_types.h
>> (100%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/timer_types.h
>> (100%)
>>  rename platform/linux-generic/include/odp/{ =>
>> api}/plat/traffic_mngr_types.h (98%)
>>  rename platform/linux-generic/include/odp/{ => api}/plat/version_types.h
>> (100%)
>>  rename platform/linux-generic/include/odp/{ => api}/pool.h (68%)
>>  rename platform/linux-generic/include/odp/{ => api}/queue.h (60%)
>>  rename platform/linux-generic/include/odp/{ => api}/random.h (91%)
>>  rename platform/linux-generic/include/odp/{ => api}/rwlock.h (81%)
>>  rename platform/linux-generic/include/odp/{ => api}/rwlock_recursive.h
>> (77%)
>>  rename platform/linux-generic/include/odp/{ => api}/schedule.h (82%)
>>  rename platform/linux-generic/include/odp/{ => api}/schedule_types.h
>> (78%)
>>  rename platform/linux-generic/include/odp/{ => api}/shared_memory.h (81%)
>>  rename platform/linux-generic/include/odp/{ => api}/spinlock.h (79%)
>>  rename platform/linux-generic/include/odp/{ => api}/spinlock_recursive.h
>> (77%)
>>  rename platform/linux-generic/include/odp/{ => api}/std_clib.h (92%)
>>  rename platform/linux-generic/include/odp/{ => api}/std_types.h (93%)
>>  rename platform/linux-generic/include/odp/{ => api}/sync.h (95%)
>>  rename platform/linux-generic/include/odp/{ => api}/system_info.h (81%)
>>  rename platform/linux-generic/include/odp/{ => api}/thread.h (80%)
>>  rename platform/linux-generic/include/odp/{ => api}/thrmask.h (82%)
>>  rename platform/linux-generic/include/odp/{ => api}/ticketlock.h (78%)
>>  rename platform/linux-generic/include/odp/{ => api}/time.h (74%)
>>  rename platform/linux-generic/include/odp/{ => api}/timer.h (62%)
>>  rename platform/linux-generic/include/odp/{ => api}/traffic_mngr.h (81%)
>>  rename platform/linux-generic/include/odp/{ => api}/version.h (79%)
>>
>> --
>> 2.1.4
>>
>>
>
>
> --
> Mike Holmes
> Technical Manager - Linaro Networking Group
> Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs
> "Work should be fun and collborative, the rest follows"
>
>
>
_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to