diff mbox

[API-NEXT,PATCHv2,1/2] api: schedule: clarify scheduler API documentation

Message ID 1451314256-27492-1-git-send-email-bill.fischofer@linaro.org
State Superseded
Headers show

Commit Message

Bill Fischofer Dec. 28, 2015, 2:50 p.m. UTC
Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>
---
 include/odp/api/schedule.h | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

Comments

Anders Roxell Dec. 28, 2015, 3:48 p.m. UTC | #1
On 2015-12-28 08:50, Bill Fischofer wrote:
> Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>
> ---
>  include/odp/api/schedule.h | 20 ++++++++++++++------
>  1 file changed, 14 insertions(+), 6 deletions(-)
> 
> diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h
> index 55191f9..749a88f 100644
> --- a/include/odp/api/schedule.h
> +++ b/include/odp/api/schedule.h
> @@ -88,27 +88,35 @@ uint64_t odp_schedule_wait_time(uint64_t ns);
>   * When returns an event, the thread holds the queue synchronization context
>   * (atomic or ordered) until the next odp_schedule() or odp_schedule_multi()
>   * call. The next call implicitly releases the current context and potentially
> - * returns with a new context. User can allow early context release (e.g. see
> - * odp_schedule_release_atomic()) for performance optimization.
> + * returns with a new context. User can allow early context release (e.g., see
> + * odp_schedule_release_atomic() and odp_schedule_release_ordered()) for
> + * performance optimization.
>   *
>   * @param from    Output parameter for the source queue (where the event was
>   *                dequeued from). Ignored if NULL.
> - * @param wait    Minimum time to wait for an event. Waits infinitely, if set to
> - *                ODP_SCHED_WAIT. Does not wait, if set to ODP_SCHED_NO_WAIT.
> + * @param wait    Minimum time to wait for an event. Waits indefinitely if set
> + *                to ODP_SCHED_WAIT. Does not wait if set to ODP_SCHED_WAIT.

Waits indefinitely if set to ODP_SCHED_WAIT and does not wait if set to
ODP_SCHED_WAIT ??

Cheers,
Anders
Bill Fischofer Dec. 28, 2015, 5:10 p.m. UTC | #2
Good typo catch.  Thanks.  v3 submitted to fix that.

On Mon, Dec 28, 2015 at 9:48 AM, Anders Roxell <anders.roxell@linaro.org>
wrote:

> On 2015-12-28 08:50, Bill Fischofer wrote:

> > Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>

> > ---

> >  include/odp/api/schedule.h | 20 ++++++++++++++------

> >  1 file changed, 14 insertions(+), 6 deletions(-)

> >

> > diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h

> > index 55191f9..749a88f 100644

> > --- a/include/odp/api/schedule.h

> > +++ b/include/odp/api/schedule.h

> > @@ -88,27 +88,35 @@ uint64_t odp_schedule_wait_time(uint64_t ns);

> >   * When returns an event, the thread holds the queue synchronization

> context

> >   * (atomic or ordered) until the next odp_schedule() or

> odp_schedule_multi()

> >   * call. The next call implicitly releases the current context and

> potentially

> > - * returns with a new context. User can allow early context release

> (e.g. see

> > - * odp_schedule_release_atomic()) for performance optimization.

> > + * returns with a new context. User can allow early context release

> (e.g., see

> > + * odp_schedule_release_atomic() and odp_schedule_release_ordered()) for

> > + * performance optimization.

> >   *

> >   * @param from    Output parameter for the source queue (where the

> event was

> >   *                dequeued from). Ignored if NULL.

> > - * @param wait    Minimum time to wait for an event. Waits infinitely,

> if set to

> > - *                ODP_SCHED_WAIT. Does not wait, if set to

> ODP_SCHED_NO_WAIT.

> > + * @param wait    Minimum time to wait for an event. Waits indefinitely

> if set

> > + *                to ODP_SCHED_WAIT. Does not wait if set to

> ODP_SCHED_WAIT.

>

> Waits indefinitely if set to ODP_SCHED_WAIT and does not wait if set to

> ODP_SCHED_WAIT ??

>

> Cheers,

> Anders

>
Mike Holmes Jan. 5, 2016, 9:20 p.m. UTC | #3
On 28 December 2015 at 09:50, Bill Fischofer <bill.fischofer@linaro.org>
wrote:

> Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>

> ---

>  include/odp/api/schedule.h | 20 ++++++++++++++------

>  1 file changed, 14 insertions(+), 6 deletions(-)

>

> diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h

> index 55191f9..749a88f 100644

> --- a/include/odp/api/schedule.h

> +++ b/include/odp/api/schedule.h

> @@ -88,27 +88,35 @@ uint64_t odp_schedule_wait_time(uint64_t ns);

>   * When returns an event, the thread holds the queue synchronization

> context

>   * (atomic or ordered) until the next odp_schedule() or

> odp_schedule_multi()

>   * call. The next call implicitly releases the current context and

> potentially

> - * returns with a new context. User can allow early context release (e.g.

> see

> - * odp_schedule_release_atomic()) for performance optimization.

> + * returns with a new context. User can allow early context release

> (e.g.,

>


Line above has an extra comma


> see

> + * odp_schedule_release_atomic() and odp_schedule_release_ordered()) for

> + * performance optimization.

>   *

>   * @param from    Output parameter for the source queue (where the event

> was

>   *                dequeued from). Ignored if NULL.

> - * @param wait    Minimum time to wait for an event. Waits infinitely, if

> set to

> - *                ODP_SCHED_WAIT. Does not wait, if set to

> ODP_SCHED_NO_WAIT.

> + * @param wait    Minimum time to wait for an event. Waits indefinitely

> if set

> + *                to ODP_SCHED_WAIT. Does not wait if set to

> ODP_SCHED_WAIT.

>   *                Use odp_schedule_wait_time() to convert time to other

> wait

>   *                values.

>   *

>   * @return Next highest priority event

>   * @retval ODP_EVENT_INVALID on timeout and no events available

>   *

> - * @see odp_schedule_multi(), odp_schedule_release_atomic()

> + * @see odp_schedule_multi(), odp_schedule_release_atomic(),

> + * odp_schedule_release_ordered()

>   */

>  odp_event_t odp_schedule(odp_queue_t *from, uint64_t wait);

>

>  /**

>   * Schedule multiple events

>   *

> - * Like odp_schedule(), but returns multiple events from a queue.

> + * Like odp_schedule(), but returns multiple events from a queue. The

> caller

> + * specifies the maximum number of events it is willing to accept. The

> + * scheduler is under no obligation to return more than a single event but

> + * will never return more than the number specified by the caller. The

> return

> + * code specifies the number of events returned and all of these events

> always

> + * originate from the same source queue and share the same scheduler

> + * synchronization context.

>   *

>   * @param from    Output parameter for the source queue (where the event

> was

>   *                dequeued from). Ignored if NULL.

> --

> 2.5.0

>

> _______________________________________________

> lng-odp mailing list

> lng-odp@lists.linaro.org

> https://lists.linaro.org/mailman/listinfo/lng-odp

>




-- 
Mike Holmes
Technical Manager - Linaro Networking Group
Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs
Bill Fischofer Jan. 5, 2016, 10:16 p.m. UTC | #4
This appears to be another idiomatic difference between American and
British English. See http://www.betterwritingskills.com/tip-w021.html


On Tue, Jan 5, 2016 at 3:20 PM, Mike Holmes <mike.holmes@linaro.org> wrote:

>

>

> On 28 December 2015 at 09:50, Bill Fischofer <bill.fischofer@linaro.org>

> wrote:

>

>> Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>

>> ---

>>  include/odp/api/schedule.h | 20 ++++++++++++++------

>>  1 file changed, 14 insertions(+), 6 deletions(-)

>>

>> diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h

>> index 55191f9..749a88f 100644

>> --- a/include/odp/api/schedule.h

>> +++ b/include/odp/api/schedule.h

>> @@ -88,27 +88,35 @@ uint64_t odp_schedule_wait_time(uint64_t ns);

>>   * When returns an event, the thread holds the queue synchronization

>> context

>>   * (atomic or ordered) until the next odp_schedule() or

>> odp_schedule_multi()

>>   * call. The next call implicitly releases the current context and

>> potentially

>> - * returns with a new context. User can allow early context release

>> (e.g. see

>> - * odp_schedule_release_atomic()) for performance optimization.

>> + * returns with a new context. User can allow early context release

>> (e.g.,

>>

>

> Line above has an extra comma

>

>

>> see

>> + * odp_schedule_release_atomic() and odp_schedule_release_ordered()) for

>> + * performance optimization.

>>   *

>>   * @param from    Output parameter for the source queue (where the event

>> was

>>   *                dequeued from). Ignored if NULL.

>> - * @param wait    Minimum time to wait for an event. Waits infinitely,

>> if set to

>> - *                ODP_SCHED_WAIT. Does not wait, if set to

>> ODP_SCHED_NO_WAIT.

>> + * @param wait    Minimum time to wait for an event. Waits indefinitely

>> if set

>> + *                to ODP_SCHED_WAIT. Does not wait if set to

>> ODP_SCHED_WAIT.

>>   *                Use odp_schedule_wait_time() to convert time to other

>> wait

>>   *                values.

>>   *

>>   * @return Next highest priority event

>>   * @retval ODP_EVENT_INVALID on timeout and no events available

>>   *

>> - * @see odp_schedule_multi(), odp_schedule_release_atomic()

>> + * @see odp_schedule_multi(), odp_schedule_release_atomic(),

>> + * odp_schedule_release_ordered()

>>   */

>>  odp_event_t odp_schedule(odp_queue_t *from, uint64_t wait);

>>

>>  /**

>>   * Schedule multiple events

>>   *

>> - * Like odp_schedule(), but returns multiple events from a queue.

>> + * Like odp_schedule(), but returns multiple events from a queue. The

>> caller

>> + * specifies the maximum number of events it is willing to accept. The

>> + * scheduler is under no obligation to return more than a single event

>> but

>> + * will never return more than the number specified by the caller. The

>> return

>> + * code specifies the number of events returned and all of these events

>> always

>> + * originate from the same source queue and share the same scheduler

>> + * synchronization context.

>>   *

>>   * @param from    Output parameter for the source queue (where the event

>> was

>>   *                dequeued from). Ignored if NULL.

>> --

>> 2.5.0

>>

>> _______________________________________________

>> lng-odp mailing list

>> lng-odp@lists.linaro.org

>> https://lists.linaro.org/mailman/listinfo/lng-odp

>>

>

>

>

> --

> Mike Holmes

> Technical Manager - Linaro Networking Group

> Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs

>

>

>
Mike Holmes Jan. 5, 2016, 10:32 p.m. UTC | #5
Ok, I looked at how we have commonly done it and thought we had settled on
e.g. but maybe it does not matter, it just caught my eye.

mike@mike-desktop:~/git/odp$ git grep  "e\.g\.\,"
doc/application-api-guide/release.dox:Implementations should change this
for each change they make (e.g., bug fix, perform
doc/users-guide/users-guide.adoc:processing (_e.g.,_ for simple forwarding)
others perform stateful packet
doc/users-guide/users-guide.adoc:other processing engines via ODP APIs
(_e.g.,_ crypto processing) that
doc/users-guide/users-guide.adoc:output is issued for some of them (_e.g.,_
as part of IP fragment reassembly
doc/users-guide/users-guide.adoc:order (_e.g.,_ as part of packet
segmentation processing for MTU
m4/ax_prog_doxygen.m4:#   ensure that contradictory flags are not given
(e.g.,

mike@mike-desktop:~/git/odp$ git grep  "e\.g\."
doc/application-api-guide/release.dox:Implementations should change this
for each change they make (e.g., bug fix, perform
doc/users-guide/users-guide.adoc:processing (_e.g.,_ for simple forwarding)
others perform stateful packet
doc/users-guide/users-guide.adoc:other processing engines via ODP APIs
(_e.g.,_ crypto processing) that
doc/users-guide/users-guide.adoc:output is issued for some of them (_e.g.,_
as part of IP fragment reassembly
doc/users-guide/users-guide.adoc:order (_e.g.,_ as part of packet
segmentation processing for MTU
doc/users-guide/users-guide.adoc:protocols (e.g. IPSec). To apply a
cryptographic operation to a packet a session
include/odp/api/atomic.h: * implement e.g. shared counters. If not
otherwise documented, operations in
include/odp/api/classification.h:       ODP_COS_FHDR_L4_PROTO,  /**< IP
protocol (e.g. TCP/UDP/ICMP) */
include/odp/api/config.h: * size e.g. due to HW or a protocol specific
alignment requirement.
include/odp/api/cpumask.h: * Use with odp_cpumask_first to traverse a CPU
mask, e.g.
include/odp/api/hash.h:* @return 0 on success, <0 on failure (e.g. not
supported algorithm)
include/odp/api/init.h: * related to platform_params (e.g. environmental
variable, configuration
include/odp/api/packet.h: * does not necessarily represent a valid address
- e.g. user may store any
include/odp/api/packet_flags.h: * Check for L2 header, e.g. ethernet
include/odp/api/packet_flags.h: * Check for L3 header, e.g. IPv4, IPv6
include/odp/api/packet_flags.h: * Check for L4 header, e.g. UDP, TCP, SCTP
(also ICMP)
include/odp/api/packet_flags.h: * Set flag for L2 header, e.g. ethernet
include/odp/api/packet_flags.h: * Set flag for L3 header, e.g. IPv4, IPv6
include/odp/api/packet_flags.h: * Set flag for L4 header, e.g. UDP, TCP,
SCTP (also ICMP)
include/odp/api/queue.h: * @retval ODP_EVENT_INVALID on failure (e.g. queue
empty)
include/odp/api/schedule.h: * returns with a new context. User can allow
early context release (e.g. see
include/odp/api/schedule_types.h: * (e.g. freed or stored) within the
context are considered missing from
include/odp/api/std_types.h: * between e.g. different compilers.
include/odp/api/sync.h: * synchronization mechanisms (e.g. execution
barriers, locks, queues, etc )
include/odp/api/thread.h:        * system, but e.g. control or monitor the
worker threads, or handle
include/odp/api/thrmask.h: * Use with odp_thrmask_first to traverse a
thread mask, e.g.
include/odp/api/timer.h: * Create a timer (allocating all necessary
resources e.g. timeout event) from
include/odp/api/version.h: * User may include this information e.g. to bug
reports. The string is null
m4/ax_prog_doxygen.m4:#   ensure that contradictory flags are not given
(e.g.,
m4/ax_pthread.m4:#   but also link it with them as well. e.g. you should
link with
m4/ax_pthread.m4:#   (e.g. PTHREAD_CREATE_UNDETACHED on AIX).
m4/ax_pthread.m4:# requires special compiler flags (e.g. on True64 or
Sequent).
m4/ax_pthread.m4:# (e.g. DEC) have both -lpthread and -lpthreads, where one
of the
platform/linux-generic/include/odp/config.h: * size e.g. due to HW or a
protocol specific alignment requirement.
platform/linux-generic/include/odp_packet_internal.h:   uint32_t l2_offset;
/**< offset to L2 hdr, e.g. Eth */
platform/linux-generic/include/odp_packet_internal.h:   uint32_t l3_offset;
/**< offset to L3 hdr, e.g. IPv4, IPv6 */
platform/linux-generic/odp_timer.c:     /* Update the timer state (e.g.
cancel the current timeout) */
platform/linux-generic/odp_timer.c:     /* Update the timer state (e.g.
cancel the current timeout) */
platform/linux-generic/pktio/socket.c: * header (e.g. IP) starts at a
32-bit aligned address.
scripts/checkpatch.pl:# check for bad placement of section $InitAttribute
(e.g.: __initdata)







On 5 January 2016 at 17:16, Bill Fischofer <bill.fischofer@linaro.org>
wrote:

> This appears to be another idiomatic difference between American and

> British English. See http://www.betterwritingskills.com/tip-w021.html

>

>

> On Tue, Jan 5, 2016 at 3:20 PM, Mike Holmes <mike.holmes@linaro.org>

> wrote:

>

>>

>>

>> On 28 December 2015 at 09:50, Bill Fischofer <bill.fischofer@linaro.org>

>> wrote:

>>

>>> Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>

>>> ---

>>>  include/odp/api/schedule.h | 20 ++++++++++++++------

>>>  1 file changed, 14 insertions(+), 6 deletions(-)

>>>

>>> diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h

>>> index 55191f9..749a88f 100644

>>> --- a/include/odp/api/schedule.h

>>> +++ b/include/odp/api/schedule.h

>>> @@ -88,27 +88,35 @@ uint64_t odp_schedule_wait_time(uint64_t ns);

>>>   * When returns an event, the thread holds the queue synchronization

>>> context

>>>   * (atomic or ordered) until the next odp_schedule() or

>>> odp_schedule_multi()

>>>   * call. The next call implicitly releases the current context and

>>> potentially

>>> - * returns with a new context. User can allow early context release

>>> (e.g. see

>>> - * odp_schedule_release_atomic()) for performance optimization.

>>> + * returns with a new context. User can allow early context release

>>> (e.g.,

>>>

>>

>> Line above has an extra comma

>>

>>

>>> see

>>> + * odp_schedule_release_atomic() and odp_schedule_release_ordered()) for

>>> + * performance optimization.

>>>   *

>>>   * @param from    Output parameter for the source queue (where the

>>> event was

>>>   *                dequeued from). Ignored if NULL.

>>> - * @param wait    Minimum time to wait for an event. Waits infinitely,

>>> if set to

>>> - *                ODP_SCHED_WAIT. Does not wait, if set to

>>> ODP_SCHED_NO_WAIT.

>>> + * @param wait    Minimum time to wait for an event. Waits indefinitely

>>> if set

>>> + *                to ODP_SCHED_WAIT. Does not wait if set to

>>> ODP_SCHED_WAIT.

>>>   *                Use odp_schedule_wait_time() to convert time to other

>>> wait

>>>   *                values.

>>>   *

>>>   * @return Next highest priority event

>>>   * @retval ODP_EVENT_INVALID on timeout and no events available

>>>   *

>>> - * @see odp_schedule_multi(), odp_schedule_release_atomic()

>>> + * @see odp_schedule_multi(), odp_schedule_release_atomic(),

>>> + * odp_schedule_release_ordered()

>>>   */

>>>  odp_event_t odp_schedule(odp_queue_t *from, uint64_t wait);

>>>

>>>  /**

>>>   * Schedule multiple events

>>>   *

>>> - * Like odp_schedule(), but returns multiple events from a queue.

>>> + * Like odp_schedule(), but returns multiple events from a queue. The

>>> caller

>>> + * specifies the maximum number of events it is willing to accept. The

>>> + * scheduler is under no obligation to return more than a single event

>>> but

>>> + * will never return more than the number specified by the caller. The

>>> return

>>> + * code specifies the number of events returned and all of these events

>>> always

>>> + * originate from the same source queue and share the same scheduler

>>> + * synchronization context.

>>>   *

>>>   * @param from    Output parameter for the source queue (where the

>>> event was

>>>   *                dequeued from). Ignored if NULL.

>>> --

>>> 2.5.0

>>>

>>> _______________________________________________

>>> lng-odp mailing list

>>> lng-odp@lists.linaro.org

>>> https://lists.linaro.org/mailman/listinfo/lng-odp

>>>

>>

>>

>>

>> --

>> Mike Holmes

>> Technical Manager - Linaro Networking Group

>> Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs

>>

>>

>>

>



-- 
Mike Holmes
Technical Manager - Linaro Networking Group
Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs
Bill Fischofer Jan. 5, 2016, 10:39 p.m. UTC | #6
Two countries divided by a common language, according to Churchill.  :)

On Tue, Jan 5, 2016 at 4:32 PM, Mike Holmes <mike.holmes@linaro.org> wrote:

> Ok, I looked at how we have commonly done it and thought we had settled on

> e.g. but maybe it does not matter, it just caught my eye.

>

> mike@mike-desktop:~/git/odp$ git grep  "e\.g\.\,"

> doc/application-api-guide/release.dox:Implementations should change this

> for each change they make (e.g., bug fix, perform

> doc/users-guide/users-guide.adoc:processing (_e.g.,_ for simple

> forwarding) others perform stateful packet

> doc/users-guide/users-guide.adoc:other processing engines via ODP APIs

> (_e.g.,_ crypto processing) that

> doc/users-guide/users-guide.adoc:output is issued for some of them

> (_e.g.,_ as part of IP fragment reassembly

> doc/users-guide/users-guide.adoc:order (_e.g.,_ as part of packet

> segmentation processing for MTU

> m4/ax_prog_doxygen.m4:#   ensure that contradictory flags are not given

> (e.g.,

>

> mike@mike-desktop:~/git/odp$ git grep  "e\.g\."

> doc/application-api-guide/release.dox:Implementations should change this

> for each change they make (e.g., bug fix, perform

> doc/users-guide/users-guide.adoc:processing (_e.g.,_ for simple

> forwarding) others perform stateful packet

> doc/users-guide/users-guide.adoc:other processing engines via ODP APIs

> (_e.g.,_ crypto processing) that

> doc/users-guide/users-guide.adoc:output is issued for some of them

> (_e.g.,_ as part of IP fragment reassembly

> doc/users-guide/users-guide.adoc:order (_e.g.,_ as part of packet

> segmentation processing for MTU

> doc/users-guide/users-guide.adoc:protocols (e.g. IPSec). To apply a

> cryptographic operation to a packet a session

> include/odp/api/atomic.h: * implement e.g. shared counters. If not

> otherwise documented, operations in

> include/odp/api/classification.h:       ODP_COS_FHDR_L4_PROTO,  /**< IP

> protocol (e.g. TCP/UDP/ICMP) */

> include/odp/api/config.h: * size e.g. due to HW or a protocol specific

> alignment requirement.

> include/odp/api/cpumask.h: * Use with odp_cpumask_first to traverse a CPU

> mask, e.g.

> include/odp/api/hash.h:* @return 0 on success, <0 on failure (e.g. not

> supported algorithm)

> include/odp/api/init.h: * related to platform_params (e.g. environmental

> variable, configuration

> include/odp/api/packet.h: * does not necessarily represent a valid address

> - e.g. user may store any

> include/odp/api/packet_flags.h: * Check for L2 header, e.g. ethernet

> include/odp/api/packet_flags.h: * Check for L3 header, e.g. IPv4, IPv6

> include/odp/api/packet_flags.h: * Check for L4 header, e.g. UDP, TCP, SCTP

> (also ICMP)

> include/odp/api/packet_flags.h: * Set flag for L2 header, e.g. ethernet

> include/odp/api/packet_flags.h: * Set flag for L3 header, e.g. IPv4, IPv6

> include/odp/api/packet_flags.h: * Set flag for L4 header, e.g. UDP, TCP,

> SCTP (also ICMP)

> include/odp/api/queue.h: * @retval ODP_EVENT_INVALID on failure (e.g.

> queue empty)

> include/odp/api/schedule.h: * returns with a new context. User can allow

> early context release (e.g. see

> include/odp/api/schedule_types.h: * (e.g. freed or stored) within the

> context are considered missing from

> include/odp/api/std_types.h: * between e.g. different compilers.

> include/odp/api/sync.h: * synchronization mechanisms (e.g. execution

> barriers, locks, queues, etc )

> include/odp/api/thread.h:        * system, but e.g. control or monitor the

> worker threads, or handle

> include/odp/api/thrmask.h: * Use with odp_thrmask_first to traverse a

> thread mask, e.g.

> include/odp/api/timer.h: * Create a timer (allocating all necessary

> resources e.g. timeout event) from

> include/odp/api/version.h: * User may include this information e.g. to bug

> reports. The string is null

> m4/ax_prog_doxygen.m4:#   ensure that contradictory flags are not given

> (e.g.,

> m4/ax_pthread.m4:#   but also link it with them as well. e.g. you should

> link with

> m4/ax_pthread.m4:#   (e.g. PTHREAD_CREATE_UNDETACHED on AIX).

> m4/ax_pthread.m4:# requires special compiler flags (e.g. on True64 or

> Sequent).

> m4/ax_pthread.m4:# (e.g. DEC) have both -lpthread and -lpthreads, where

> one of the

> platform/linux-generic/include/odp/config.h: * size e.g. due to HW or a

> protocol specific alignment requirement.

> platform/linux-generic/include/odp_packet_internal.h:   uint32_t

> l2_offset; /**< offset to L2 hdr, e.g. Eth */

> platform/linux-generic/include/odp_packet_internal.h:   uint32_t

> l3_offset; /**< offset to L3 hdr, e.g. IPv4, IPv6 */

> platform/linux-generic/odp_timer.c:     /* Update the timer state (e.g.

> cancel the current timeout) */

> platform/linux-generic/odp_timer.c:     /* Update the timer state (e.g.

> cancel the current timeout) */

> platform/linux-generic/pktio/socket.c: * header (e.g. IP) starts at a

> 32-bit aligned address.

> scripts/checkpatch.pl:# check for bad placement of section $InitAttribute

> (e.g.: __initdata)

>

>

>

>

>

>

>

> On 5 January 2016 at 17:16, Bill Fischofer <bill.fischofer@linaro.org>

> wrote:

>

>> This appears to be another idiomatic difference between American and

>> British English. See http://www.betterwritingskills.com/tip-w021.html

>>

>>

>> On Tue, Jan 5, 2016 at 3:20 PM, Mike Holmes <mike.holmes@linaro.org>

>> wrote:

>>

>>>

>>>

>>> On 28 December 2015 at 09:50, Bill Fischofer <bill.fischofer@linaro.org>

>>> wrote:

>>>

>>>> Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>

>>>> ---

>>>>  include/odp/api/schedule.h | 20 ++++++++++++++------

>>>>  1 file changed, 14 insertions(+), 6 deletions(-)

>>>>

>>>> diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h

>>>> index 55191f9..749a88f 100644

>>>> --- a/include/odp/api/schedule.h

>>>> +++ b/include/odp/api/schedule.h

>>>> @@ -88,27 +88,35 @@ uint64_t odp_schedule_wait_time(uint64_t ns);

>>>>   * When returns an event, the thread holds the queue synchronization

>>>> context

>>>>   * (atomic or ordered) until the next odp_schedule() or

>>>> odp_schedule_multi()

>>>>   * call. The next call implicitly releases the current context and

>>>> potentially

>>>> - * returns with a new context. User can allow early context release

>>>> (e.g. see

>>>> - * odp_schedule_release_atomic()) for performance optimization.

>>>> + * returns with a new context. User can allow early context release

>>>> (e.g.,

>>>>

>>>

>>> Line above has an extra comma

>>>

>>>

>>>> see

>>>> + * odp_schedule_release_atomic() and odp_schedule_release_ordered())

>>>> for

>>>> + * performance optimization.

>>>>   *

>>>>   * @param from    Output parameter for the source queue (where the

>>>> event was

>>>>   *                dequeued from). Ignored if NULL.

>>>> - * @param wait    Minimum time to wait for an event. Waits infinitely,

>>>> if set to

>>>> - *                ODP_SCHED_WAIT. Does not wait, if set to

>>>> ODP_SCHED_NO_WAIT.

>>>> + * @param wait    Minimum time to wait for an event. Waits

>>>> indefinitely if set

>>>> + *                to ODP_SCHED_WAIT. Does not wait if set to

>>>> ODP_SCHED_WAIT.

>>>>   *                Use odp_schedule_wait_time() to convert time to

>>>> other wait

>>>>   *                values.

>>>>   *

>>>>   * @return Next highest priority event

>>>>   * @retval ODP_EVENT_INVALID on timeout and no events available

>>>>   *

>>>> - * @see odp_schedule_multi(), odp_schedule_release_atomic()

>>>> + * @see odp_schedule_multi(), odp_schedule_release_atomic(),

>>>> + * odp_schedule_release_ordered()

>>>>   */

>>>>  odp_event_t odp_schedule(odp_queue_t *from, uint64_t wait);

>>>>

>>>>  /**

>>>>   * Schedule multiple events

>>>>   *

>>>> - * Like odp_schedule(), but returns multiple events from a queue.

>>>> + * Like odp_schedule(), but returns multiple events from a queue. The

>>>> caller

>>>> + * specifies the maximum number of events it is willing to accept. The

>>>> + * scheduler is under no obligation to return more than a single event

>>>> but

>>>> + * will never return more than the number specified by the caller. The

>>>> return

>>>> + * code specifies the number of events returned and all of these

>>>> events always

>>>> + * originate from the same source queue and share the same scheduler

>>>> + * synchronization context.

>>>>   *

>>>>   * @param from    Output parameter for the source queue (where the

>>>> event was

>>>>   *                dequeued from). Ignored if NULL.

>>>> --

>>>> 2.5.0

>>>>

>>>> _______________________________________________

>>>> lng-odp mailing list

>>>> lng-odp@lists.linaro.org

>>>> https://lists.linaro.org/mailman/listinfo/lng-odp

>>>>

>>>

>>>

>>>

>>> --

>>> Mike Holmes

>>> Technical Manager - Linaro Networking Group

>>> Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM

>>> SoCs

>>>

>>>

>>>

>>

>

>

> --

> Mike Holmes

> Technical Manager - Linaro Networking Group

> Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs

>

>

>
diff mbox

Patch

diff --git a/include/odp/api/schedule.h b/include/odp/api/schedule.h
index 55191f9..749a88f 100644
--- a/include/odp/api/schedule.h
+++ b/include/odp/api/schedule.h
@@ -88,27 +88,35 @@  uint64_t odp_schedule_wait_time(uint64_t ns);
  * When returns an event, the thread holds the queue synchronization context
  * (atomic or ordered) until the next odp_schedule() or odp_schedule_multi()
  * call. The next call implicitly releases the current context and potentially
- * returns with a new context. User can allow early context release (e.g. see
- * odp_schedule_release_atomic()) for performance optimization.
+ * returns with a new context. User can allow early context release (e.g., see
+ * odp_schedule_release_atomic() and odp_schedule_release_ordered()) for
+ * performance optimization.
  *
  * @param from    Output parameter for the source queue (where the event was
  *                dequeued from). Ignored if NULL.
- * @param wait    Minimum time to wait for an event. Waits infinitely, if set to
- *                ODP_SCHED_WAIT. Does not wait, if set to ODP_SCHED_NO_WAIT.
+ * @param wait    Minimum time to wait for an event. Waits indefinitely if set
+ *                to ODP_SCHED_WAIT. Does not wait if set to ODP_SCHED_WAIT.
  *                Use odp_schedule_wait_time() to convert time to other wait
  *                values.
  *
  * @return Next highest priority event
  * @retval ODP_EVENT_INVALID on timeout and no events available
  *
- * @see odp_schedule_multi(), odp_schedule_release_atomic()
+ * @see odp_schedule_multi(), odp_schedule_release_atomic(),
+ * odp_schedule_release_ordered()
  */
 odp_event_t odp_schedule(odp_queue_t *from, uint64_t wait);
 
 /**
  * Schedule multiple events
  *
- * Like odp_schedule(), but returns multiple events from a queue.
+ * Like odp_schedule(), but returns multiple events from a queue. The caller
+ * specifies the maximum number of events it is willing to accept. The
+ * scheduler is under no obligation to return more than a single event but
+ * will never return more than the number specified by the caller. The return
+ * code specifies the number of events returned and all of these events always
+ * originate from the same source queue and share the same scheduler
+ * synchronization context.
  *
  * @param from    Output parameter for the source queue (where the event was
  *                dequeued from). Ignored if NULL.