Re: [lng-odp] [API-NEXT PATCHv8 00/13] Scheduler API Enhancements

2015-08-05 Thread Bill Fischofer
Bala/Alex: Please review the new odp_schedule_order_lock() and odp_schedule_order_unlock() routines (parts 12 and 13 of this series). I believe they now provide the functionality you want, and do so quite efficiently. Thanks. On Wed, Aug 5, 2015 at 5:55 PM, Bill Fischofer wrote: > Changes in v

[lng-odp] [API-NEXT PATCHv8 13/13] linux-generic: schedule: implement odp_schedule_order_lock/unlock

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- .../include/odp/plat/schedule_types.h | 2 - .../linux-generic/include/odp_buffer_internal.h| 5 ++- .../linux-generic/include/odp_queue_internal.h | 2 + platform/linux-generic/odp_queue.c | 48 -- 4 fi

[lng-odp] [API-NEXT PATCHv8 12/13] api: schedule: add odp_schedule_order_lock/unlock

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- include/odp/api/schedule.h | 78 -- 1 file changed, 41 insertions(+), 37 deletions(-) diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h index ea16583..2762bdd 100644 --- a/include/odp/api/schedule.h

[lng-odp] [API-NEXT PATCHv8 11/13] linux-generic: schedule: implement order copying and sustaining

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- .../linux-generic/include/odp_buffer_internal.h| 1 + platform/linux-generic/odp_queue.c | 43 +++--- platform/linux-generic/odp_schedule.c | 24 3 files changed, 62 insertions(+), 6 deletions(-) dif

[lng-odp] [API-NEXT PATCHv8 10/13] api: schedule: add APIs for order copying and sustaining

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- include/odp/api/schedule.h | 51 ++ 1 file changed, 51 insertions(+) diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h index f27bf78..ea16583 100644 --- a/include/odp/api/schedule.h +++ b/include/odp

[lng-odp] [API-NEXT PATCHv8 09/13] linux-generic: queue: add ordered chain enq support

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- .../linux-generic/include/odp_buffer_internal.h| 4 + platform/linux-generic/odp_queue.c | 151 +++-- 2 files changed, 115 insertions(+), 40 deletions(-) diff --git a/platform/linux-generic/include/odp_buffer_internal.h b/p

[lng-odp] [API-NEXT PATCHv8 08/13] api: queue: document ordered chain enq support

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- include/odp/api/queue.h | 23 +++ 1 file changed, 23 insertions(+) diff --git a/include/odp/api/queue.h b/include/odp/api/queue.h index ce04eb4..5a6dbc0 100644 --- a/include/odp/api/queue.h +++ b/include/odp/api/queue.h @@ -173,6 +173,29 @@ i

[lng-odp] [API-NEXT PATCHv8 07/13] linux-generic: schedule: implement odp_schedule_prefetch()

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- platform/linux-generic/odp_schedule.c | 5 + 1 file changed, 5 insertions(+) diff --git a/platform/linux-generic/odp_schedule.c b/platform/linux-generic/odp_schedule.c index d595375..4d594a0 100644 --- a/platform/linux-generic/odp_schedule.c +++ b/platform/

[lng-odp] [API-NEXT PATCHv8 06/13] linux-generic: schedule: implement odp_schedule_release_ordered()

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- platform/linux-generic/odp_queue.c | 169 + 1 file changed, 152 insertions(+), 17 deletions(-) diff --git a/platform/linux-generic/odp_queue.c b/platform/linux-generic/odp_queue.c index 4d0e1b4..a2460e7 100644 --- a/platform/

[lng-odp] [API-NEXT PATCHv8 05/13] api: schedule: revised definition of odp_schedule_release_ordered

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- include/odp/api/schedule.h | 38 -- 1 file changed, 24 insertions(+), 14 deletions(-) diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h index bd858b3..f27bf78 100644 --- a/include/odp/api/schedule.h +++ b/in

[lng-odp] [API-NEXT PATCHv8 04/13] linux-generic: queue: implement ordered queues

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- .../linux-generic/include/odp_buffer_internal.h| 5 + .../linux-generic/include/odp_queue_internal.h | 4 + .../linux-generic/include/odp_schedule_internal.h | 2 +- platform/linux-generic/odp_pool.c | 3 + platform/linux-generic

[lng-odp] [API-NEXT PATCHv8 03/13] linux-generic: schedule: implement scheduler groups

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- include/odp/api/config.h | 5 + .../include/odp/plat/schedule_types.h | 4 + platform/linux-generic/odp_schedule.c | 156 + platform/linux-generic/odp_thread.c| 25 +++-

[lng-odp] [API-NEXT PATCHv8 02/13] validation: schedule: initialize queue and pool parameters

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- test/validation/scheduler/scheduler.c | 4 1 file changed, 4 insertions(+) diff --git a/test/validation/scheduler/scheduler.c b/test/validation/scheduler/scheduler.c index fe03ab7..bbe829e 100644 --- a/test/validation/scheduler/scheduler.c +++ b/test/valid

[lng-odp] [API-NEXT PATCHv8 01/13] api: schedule: additional scheduler group functions

2015-08-05 Thread Bill Fischofer
Signed-off-by: Bill Fischofer --- include/odp/api/schedule.h | 63 +++--- 1 file changed, 59 insertions(+), 4 deletions(-) diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h index 36e52cd..bd858b3 100644 --- a/include/odp/api/schedule.h +

[lng-odp] [API-NEXT PATCHv8 00/13] Scheduler API Enhancements

2015-08-05 Thread Bill Fischofer
Changes in v8 - Miscellaneous comment improvements - Delete odp_schedule_order_sync() in favor of two new APIs. odp_schedule_order_lock() and odp_schedule_order_unlock() permit in-order locking within an ordered context in a serially reusable manner. Locks obtained by these routines are inten

[lng-odp] [API-NEXT PATCH 4/4] linux-generic: odp_schedule: avoid "cycle" word usage

2015-08-05 Thread Ivan Khoronzhuk
The word "cycle" is left from old API time names. The "cycle" is ambiguous word, especially when it can be used with software cycles. So better to use "time" word or just "t" symbol, as no matter in which units time is measured, in sec, hours, cycles or counts. Signed-off-by: Ivan Khoronzhuk ---

[lng-odp] [API-NEXT PATCH 3/4] linux-generic: use appropriate time API with count instead of cycles

2015-08-05 Thread Ivan Khoronzhuk
The time API were changed from *_cycles* to *_counts*, so use appropriate names. Signed-off-by: Ivan Khoronzhuk --- platform/linux-generic/arch/linux/odp_time.c | 2 +- platform/linux-generic/arch/mips64/odp_time.c | 2 +- platform/linux-generic/arch/x86/odp_time.c| 2 +- platform/linux-gen

[lng-odp] [API-NEXT PATCH 2/4] test/example: avoid "cycle" word usage

2015-08-05 Thread Ivan Khoronzhuk
The word "cycle" is left from old API time names. The "cycle" is ambiguous word, especially when it can be used with software cycles. So better to use "time" word or just "t" symbol, as no matter in which units time is measured, in sec, hours, cycles or counts. Signed-off-by: Ivan Khoronzhuk ---

[lng-odp] [API-NEXT PATCH 1/4] api: time: unbind CPU cycles from time API

2015-08-05 Thread Ivan Khoronzhuk
Current time API supposes that frequency of counter is equal to CPU frequency. But that's not always true, for instance, in case if no access to CPU cycle counter, another hi-resolution timer can be used, and it`s frequency can be different from CPU frequency. There is no big difference in which cy

[lng-odp] [API-NEXT PATCH 0/4] api: time: change API to use counts instead of cycles

2015-08-05 Thread Ivan Khoronzhuk
This seres is intedent to change time API names from *_cycles* to *_counts*. Also remove usage of word "cycle" from appropriate places as it's no more valid. Based on api-next. Ivan Khoronzhuk (4): api: time: unbind CPU cycles from time API test/example: avoid "cycle" word usage linux-gener

Re: [lng-odp] Fundamental difference between ODP and SAI (Switch Abstraction Interface) from OCP group

2015-08-05 Thread Bill Fischofer
There hasn't been any interaction between these two projects to my knowledge. As far as I can tell from the SAI web site, their goal seems to be more on the switch management side, whereas ODP is focused on data plane applications. On Wed, Aug 5, 2015 at 2:50 PM, gyanesh patra wrote: > Hi All,

[lng-odp] Fundamental difference between ODP and SAI (Switch Abstraction Interface) from OCP group

2015-08-05 Thread gyanesh patra
Hi All, I have seen ODP and SAI have good traction in networking community with very rapid contribution and development. Can anyone please explain how they are different from each other? What is the fundamental difference in their goal? Thanks P Gyanesh Kumar Patra

Re: [lng-odp] [PATCH 1/2] linux-generic: improve compilation of arch code

2015-08-05 Thread Mike Holmes
On 5 August 2015 at 14:55, Bill Fischofer wrote: > linux-generic wouldn't introduce ARCH variants except in those cases where > it truly matters (e.g., some of the atomics, Barry's proposed AES-based > hashing for TM, etc.). For everything else the standard generic C code > should be fine. > Ag

Re: [lng-odp] [PATCH 1/2] linux-generic: improve compilation of arch code

2015-08-05 Thread Bill Fischofer
linux-generic wouldn't introduce ARCH variants except in those cases where it truly matters (e.g., some of the atomics, Barry's proposed AES-based hashing for TM, etc.). For everything else the standard generic C code should be fine. On Wed, Aug 5, 2015 at 1:52 PM, Mike Holmes wrote: > > > On 5

Re: [lng-odp] [PATCH 1/2] linux-generic: improve compilation of arch code

2015-08-05 Thread Mike Holmes
On 5 August 2015 at 14:39, Bill Fischofer wrote: > linux-generic serves several purposes and one of them is to serve as a > model for "production" implementations. So it's reasonable for > linux-generic to have an ARCH structure for other implementations to use as > a model. For example, if we

Re: [lng-odp] [PATCH 1/2] linux-generic: improve compilation of arch code

2015-08-05 Thread Bill Fischofer
linux-generic serves several purposes and one of them is to serve as a model for "production" implementations. So it's reasonable for linux-generic to have an ARCH structure for other implementations to use as a model. For example, if we wanted to support odp-dpdk on ARM-based platforms that do t

Re: [lng-odp] [PATCHv3] example:generator:option to supply core mask

2015-08-05 Thread Krishna Garapati
Fixed the comments in the new version. On 5 August 2015 at 19:13, Stuart Haslam wrote: > On Thu, Jul 30, 2015 at 01:24:01PM +0200, Balakrishna.Garapati wrote: > > Signed-off-by: Balakrishna.Garapati > > --- > > changed the command line argument conventions. > > example/generator/odp_generator

Re: [lng-odp] [PATCH 1/4] linux-generic: pktio: extend maximum devname length

2015-08-05 Thread Bill Fischofer
On Wed, Aug 5, 2015 at 10:26 AM, Stuart Haslam wrote: > Signed-off-by: Stuart Haslam > --- > platform/linux-generic/include/odp_packet_io_internal.h | 4 +++- > platform/linux-generic/odp_packet_io.c | 9 + > 2 files changed, 8 insertions(+), 5 deletions(-) > > diff --g

[lng-odp] [PATCHv4] example:generator:option to supply core mask

2015-08-05 Thread Balakrishna.Garapati
Signed-off-by: Balakrishna.Garapati --- Fixed the comments example/generator/odp_generator.c | 59 ++- 1 file changed, 40 insertions(+), 19 deletions(-) diff --git a/example/generator/odp_generator.c b/example/generator/odp_generator.c index bdee222..e364af

[lng-odp] [PATCH] doc: doxygen.cfg: generate data for API analysis tool

2015-08-05 Thread Mike Holmes
Doxygen can create a perl module that is a hash of the entire API. Set the flag to generate this so that tools may analyse differences in the API between different repositories branches and tags. The benefits are: - This can allow CI to generate nightly data such as the difference between api-ne

Re: [lng-odp] [PATCHv3] example:generator:option to supply core mask

2015-08-05 Thread Stuart Haslam
On Thu, Jul 30, 2015 at 01:24:01PM +0200, Balakrishna.Garapati wrote: > Signed-off-by: Balakrishna.Garapati > --- > changed the command line argument conventions. > example/generator/odp_generator.c | 57 > ++- > 1 file changed, 39 insertions(+), 18 deletions

Re: [lng-odp] [PATCHv2] example:generator:move verbose from worker to control

2015-08-05 Thread Stuart Haslam
On Tue, Aug 04, 2015 at 11:07:57AM +0200, Balakrishna.Garapati wrote: > Signed-off-by: Balakrishna.Garapati > --- > Added packet rate stats > example/generator/odp_generator.c | 67 > --- > 1 file changed, 56 insertions(+), 11 deletions(-) > > diff --git a/e

Re: [lng-odp] [PATCH 2/2] linux-generic: rename arch odp_time.c to odp_time_cycles.c

2015-08-05 Thread Mike Holmes
On 5 August 2015 at 12:04, Maxim Uvarov wrote: > Building generated this warning message: > "copying selected object files to avoid basename conflicts..." That happed due to we have files with same name: > happened > ./platform/linux-generic/odp_time.c > and > platform/linux-generic/arch/.../

Re: [lng-odp] [PATCH 1/2] linux-generic: improve compilation of arch code

2015-08-05 Thread Mike Holmes
On 5 August 2015 at 12:04, Maxim Uvarov wrote: > Compile all arch depandant code to library, then link that > library to main libodp.a > > We don’t want two libraries for one implementation that is confusing if it takes this level of complexity I wonder if we need to remove all ARCH support from

[lng-odp] [PATCH 2/2] linux-generic: rename arch odp_time.c to odp_time_cycles.c

2015-08-05 Thread Maxim Uvarov
Building generated this warning message: "copying selected object files to avoid basename conflicts..." That happed due to we have files with same name: ./platform/linux-generic/odp_time.c and platform/linux-generic/arch/.../odp_time.c Autotools builds 2 objects with corresponding name odp_time.o.

[lng-odp] [PATCH 1/2] linux-generic: improve compilation of arch code

2015-08-05 Thread Maxim Uvarov
Compile all arch depandant code to library, then link that library to main libodp.a Signed-off-by: Maxim Uvarov --- platform/linux-generic/Makefile.am | 6 -- platform/linux-generic/arch/linux/Makefile.am | 5 + platform/linux-generic/arch/mips64/Makefile.am | 5 + platf

[lng-odp] [PATCH 0/2] improve compilation of arch code

2015-08-05 Thread Maxim Uvarov
Try to orginize arch code compilation. For some reason these patches break ./scripts/debian packaging. But build in tree and out of tree pass, make dist also pass. Will send v2 when will figure out what is that, any help how to debug debian build is welcome. Maxim. Maxim Uvarov (2): linux-ge

Re: [lng-odp] [PATCH] example: classifier: resolve text alignment issues

2015-08-05 Thread Bala
Reviewed-by: Balasubramanian Manoharan Regards, Bala > On 05-Aug-2015, at 8:54 pm, Stuart Haslam wrote: > > When the string containing the number of packets processed by one of the > queues gets for be longer than a tab the alignment is messed up and the > fields overlap with part of a previou

[lng-odp] [PATCH 4/4] linux-generic: pktio: add test for pcap pktio

2015-08-05 Thread Stuart Haslam
If pcap is enabled in the build, add a validation test for it. Signed-off-by: Stuart Haslam --- platform/linux-generic/test/Makefile.am | 5 platform/linux-generic/test/pktio/Makefile.am| 4 +++ platform/linux-generic/test/pktio/pktio_run_pcap | 33 3

[lng-odp] [PATCH 3/4] linux-generic: pktio: add pcap pktio type

2015-08-05 Thread Stuart Haslam
Create a new pktio type that allows for reading from and writing to a pcap capture file. This is intended to be used as a simple way of injecting test packets into an application for functional testing and can be used as it is with some of the existing example applications. To use this interface t

[lng-odp] [PATCH 2/4] example: classifier: fix potential buffer overflow

2015-08-05 Thread Stuart Haslam
cos_name will overflow if args->if_name is long, so change the sprintf to snprintf. For consistency the other uses of sprintf are also removed. Signed-off-by: Stuart Haslam --- example/classifier/odp_classifier.c | 16 +--- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git

[lng-odp] [PATCH 1/4] linux-generic: pktio: extend maximum devname length

2015-08-05 Thread Stuart Haslam
Signed-off-by: Stuart Haslam --- platform/linux-generic/include/odp_packet_io_internal.h | 4 +++- platform/linux-generic/odp_packet_io.c | 9 + 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/platform/linux-generic/include/odp_packet_io_internal.h b/platf

[lng-odp] [PATCH] example: classifier: resolve text alignment issues

2015-08-05 Thread Stuart Haslam
When the string containing the number of packets processed by one of the queues gets for be longer than a tab the alignment is messed up and the fields overlap with part of a previous value. Signed-off-by: Stuart Haslam --- example/classifier/odp_classifier.c | 10 ++ 1 file changed, 6 i

Re: [lng-odp] [PATCH] validation: update README files

2015-08-05 Thread Stuart Haslam
On Fri, Jul 31, 2015 at 09:56:44PM +0200, Christophe Milard wrote: > Signed-off-by: Christophe Milard Reviewed-by: Stuart Haslam > --- > test/README| 8 +--- > test/validation/README | 50 > ++ > 2 files changed, 51 insertions(+

Re: [lng-odp] [Patch] validation: time: increase TOLERANCE range

2015-08-05 Thread Ivan Khoronzhuk
The API names even can be leaved as is. Only description change (remove CPU cycles) On 05.08.15 15:01, Ivan Khoronzhuk wrote: On 04.08.15 15:19, Mike Holmes wrote: In the platform call just now the discussion came to this patch. Ivan can you propose an API to get the timer resolution for the p

Re: [lng-odp] [Patch] validation: time: increase TOLERANCE range

2015-08-05 Thread Ivan Khoronzhuk
On 04.08.15 15:19, Mike Holmes wrote: In the platform call just now the discussion came to this patch. Ivan can you propose an API to get the timer resolution for the platform, then the test suite can call that and run the test appropriately. I remember someone proposed to rename cycles to so

Re: [lng-odp] [API-NEXT PATCHv7 05/13] api: schedule: revised definition of odp_schedule_release_ordered

2015-08-05 Thread Bill Fischofer
Yes. I'll reword in v8. Thanks. On Wed, Aug 5, 2015 at 1:09 AM, Bala Manoharan wrote: > Hi, > > On 5 August 2015 at 04:11, Bill Fischofer > wrote: > >> Signed-off-by: Bill Fischofer >> --- >> include/odp/api/schedule.h | 38 -- >> 1 file changed, 24 inser