Petri,

that looks like also good to go to 1.7. Validation tests should be there because it's only rename.
What do you think?

Maxim.


On 01/29/2016 19:00, Bill Fischofer wrote:
Thanks for the further explanation. Yes, UNSCHED implies a dichotomy that may be limiting. I guess the real distinction is that certain queues are managed by ODP while others are managed by the application itself (alternately, queues are either system managed, with various ODP-defined attributes, or user managed). I don't suppose either ODP_QUEUE_TYPE_APPLICATION or ODP_QUEUE_TYPE_USER appeals?

On Fri, Jan 29, 2016 at 2:12 AM, Savolainen, Petri (Nokia - FI/Espoo) <[email protected] <mailto:[email protected]>> wrote:

    I have considered unsched also, but really don’t like that since
    it would define the queue type by what it is not (instead of what
    it is). It would be also problematic term, if we’d need to define
    a third type in the future (e.g. sorted queue, etc).

    This queue type provides the basic (or plain) set of queue
    features. Also I’d not call it “normal queue”, since sched queue
    may be the norm for one application and this for another. Term
    “basic” could have the same problem: e.g. atomic queue maybe the
    basic queue type for an application. In RFC, I used term “direct
    queue”, but I’d want to reserve the term “direct” for e.g. “direct
    pktio” mode and other direct accesses APIs (to other ODP blocks).
    When these plain (or scheduled) queues are connected to pktio,
    it’s an in-direction compared to the direct access.

    After these patches the (commonly spoken) terminology would be

    ·Plain queues

    ·Parallel queues

    ·Atomic queues

    ·Ordered queues

    … and potentially in the future

    ·Sorted queues, etc (queues with advanced features) …

    /**

    * Queue create

    *

    * Create a queue according to the queue parameters. Queue type is
    specified by

    * queue parameter 'type'. Use odp_queue_param_init() to initialize
    parameters

    * into their default values. *Default values are also used when
    'param' pointer*

    ** is NULL. The default queue type is ODP_QUEUE_TYPE_PLAIN.*

    *

    * @param name    Queue name

    * @param param   Queue parameters. Uses defaults if NULL.

    *

    * @return Queue handle

    * @retval ODP_QUEUE_INVALID on failure

    */

    odp_queue_t odp_queue_create(const char *name, const
    odp_queue_param_t *param);

    The default type is already documented. If user sets param to NULL
    or passes an initialized param (without any changes), the result
    is the same - the default settings. The type would be PLAIN in
    both cases.

    -Petri

    *From:*EXT Bill Fischofer [mailto:[email protected]
    <mailto:[email protected]>]
    *Sent:* Friday, January 29, 2016 5:21 AM
    *To:* Savolainen, Petri (Nokia - FI/Espoo)
    *Cc:* LNG ODP Mailman List
    *Subject:* Re: [lng-odp] [API-NEXT PATCH 0/6] Rename queue types

    This looks good, however PLAIN doesn't seem very intuitive as it's
    not descriptive of how the queue behaves.  How about simply
    QUEUE_TYPE_UNSCHED to contrast with QUEUE_TYPE_SCHED?  The real
    distinction here is whether the ODP scheduler or the application
    is managing the queue, i.e., whether the queue is scheduled or
    unscheduled.  Encoding that in the name would make that
    distinction very clear.  With the move of the type parameter into
    the odp_queue_param_t struct, omitting this struct on
    odp_queue_create() would default to creating an unscheduled queue.

    Other than that, for this series:

    Reviewed-and-tested-by: Bill Fischofer <[email protected]
    <mailto:[email protected]>>

    On Thu, Jan 28, 2016 at 7:24 AM, Petri Savolainen
    <[email protected] <mailto:[email protected]>>
    wrote:

        This patch set renames queue types and pktio modes with
        commonly used and
        descriptive terms. Type of odp_queue_type_t is defined as enum
        and included
        into queue parameters. Queue type and defines parameter usage
        (which params are
        considered e.g. in queue creation), and is inline with other
        create APIs (pool,
        timer, tm, ...).

        These modifications are preparation for removal of PKTIN and
        PKOUT queue types,
        and the single queue pktio API (odp_pktio_inq_setdef(), etc).



        Petri Savolainen (6):
          api: sched: rename SCHED_SYNC_NONE to _PARALLEL
          api: queue: rename QUEUE_TYPE_POLL to _PLAIN
          api: pktio: rename pktio modes
          api: queue: define queue type as enum
          api: queue: moved queue type into queue parameters
          linux-generic: use term plain queue instead of poll

         example/classifier/odp_classifier.c           | 16 ++--
         example/generator/odp_generator.c           |  9 ++-
         example/ipsec/odp_ipsec.c           | 43 ++++++-----
         example/packet/odp_pktio.c          | 14 ++--
         example/time/time_global_test.c           |  8 +-
         example/timer/odp_timer_test.c          |  5 +-
         include/odp/api/packet_io.h           | 26 +++----
         include/odp/api/queue.h           | 68 +++++++++-------
         include/odp/api/schedule_types.h          | 12 +--
         .../linux-generic/include/odp/plat/queue_types.h  |  8 --
         .../include/odp/plat/schedule_types.h           |  2 +-
         platform/linux-generic/odp_packet_io.c          | 37 +++++----
         platform/linux-generic/odp_queue.c          | 13 +++-
         platform/linux-generic/odp_schedule.c           |  5 +-
         platform/linux-generic/pktio/loop.c           |  2 +-
         platform/linux-generic/pktio/netmap.c           |  3 +-
         test/performance/odp_l2fwd.c          | 54 ++++++-------
         test/performance/odp_pktio_perf.c           | 32 ++++----
         test/performance/odp_scheduling.c           | 20 ++---
         .../classification/odp_classification_common.c    | 11 +--
         .../classification/odp_classification_test_pmr.c  | 13 ++--
         .../classification/odp_classification_tests.c     | 51
        ++++++------
         test/validation/crypto/crypto.c           |  3 +-
         test/validation/pktio/pktio.c           | 90
        +++++++++++-----------
         test/validation/pktio/pktio.h           |  4 +-
         test/validation/queue/queue.c           | 48 ++++++------
         test/validation/scheduler/scheduler.c           | 89
        +++++++++++----------
         test/validation/timer/timer.c           |  6 +-
         28 files changed, 353 insertions(+), 339 deletions(-)

        --
        2.6.3

        _______________________________________________
        lng-odp mailing list
        [email protected] <mailto:[email protected]>
        https://lists.linaro.org/mailman/listinfo/lng-odp




_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp

_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to