Thanks, Ola.  I agree it's important to get written input.  A lot of this
is coming in the form of comments in the design docs, but I agree that
written application use cases in separate docs or posts to this list would
be helpful in ensuring that all views and perspectives are available for
synthesis and not lost in the shuffle.

We've stated from the outset that we're striking a balance here.  We don't
want "least common denominator" functions that require the application to
do everything, and we don't want super high-level things that would be
difficult to implement efficiently on current-generation HW.  I think we
have a good balance right now for the APIs we've documented and discussed,
and of course this will continue to evolve over time.  But there's always
room for improvement and input based on real-world application and
implementation experience is always the most valuable in helping to guide
this evolution.

Right now I'm most concerned with the queue/scheduler stuff, particularly
as it surrounds ordering.  There's been a lot of hand waving around this
but we need more detailed worked-out scenarios.  That has to be one of the
main design focus areas over the next week.

Bill

Bill

On Tue, Oct 21, 2014 at 3:21 PM, Ola Liljedahl <[email protected]>
wrote:

> On 21 October 2014 19:53, Bill Fischofer <[email protected]>
> wrote:
>
>> Thanks to everyone who participated in today's call.  The call summary is
>> attached.
>>
>> Here are the meeting notes:
>>
>> Agenda:
>>
>>    -
>>
>>    Revised Packet API Design Doc
>>    
>> <https://docs.google.com/a/linaro.org/document/d/1_iawxU46IZ8-O6dPavgaZj2Swv-FwLtiP_P13uB9PSU/edit#>
>>    and Discussion
>>    <http://lists.linaro.org/pipermail/lng-odp/2014-October/004086.html>
>>    -
>>
>>       Do we need SCTP?
>>       -
>>
>>       inflag/outflag use
>>       -
>>
>>       odp_packet_parse() need
>>       -
>>
>>       headroom/tailroom semantics
>>       -
>>
>>    Ordered Queues discussion
>>    <http://lists.linaro.org/pipermail/lng-odp/2014-October/004028.html>
>>    -
>>
>>    Revised Atomics discussion
>>    <http://lists.linaro.org/pipermail/lng-odp/2014-October/003980.html>.
>>    The patch is here
>>    <http://lists.linaro.org/pipermail/lng-odp/2014-October/004096.html>.
>>    -
>>
>>    Follow-up discussions on PktIO Design Doc
>>    
>> <https://docs.google.com/a/linaro.org/document/d/13V2z3x0u3thHFyd7G8EelGgoV0UE2aW4iYIUOnY_Y7A/edit#heading=h.1jjxd4umbh6h>
>>
>>
>> *Discussion/Decisions on Packets:*
>>
>>    - Reaffirmed that SCTP is not needed for ODP v1.0.  Routines
>>    referencing it will be removed from the design docs and the linux-generic
>>    code.
>>
>>
>>    - Consensus was that we want setters for the individual parser
>>    inflags.  They will be added.
>>
>>
>>    - A single odp_packet_inflag_error() is sufficient for ODP v1.0.
>>    Will add to these as needed post-v1.0.
>>
>>
>>    - odp_packet_parse() still valuable.  Application has choice as to
>>    whether it wants to use it or set inflags as needed.
>>
>>
>>    - Consensus is that outflags to control L3/L4 checksumming on a
>>    per-packet basis is valuable, however they will be considered override
>>    values, meaning that they only have meaning if the application calls a
>>    setter for them.  In the absence of setter calls, the checksum offloads
>>    attributes of the transmitting odp_pktio_t will apply.  No ability to
>>    control Ethernet FCS is part of ODP v1.0.  This may be revisited 
>> post-v1.0.
>>
>>
>>    - A lot of discussion surrounding the need for APIs to split and join
>>    packets for things like IP fragment reassembly, LSO, etc.  Bill to propose
>>    offset-based APIs for further discussion.  Consensus is that very basic
>>    support is sufficient for ODP v1.0 with more sophisticated protocol-aware
>>    things best done post v1.0.  Need timely feedback and/or alternate API
>>    proposals on these from those with opinions on this subject.
>>
>>
>>    - A lot of discussion surrounding headroom and tailroom and use
>>    cases.  Bill to add additional material to expand on this.  Will also add
>>    diagrams as they will undoubtedly help.
>>
>> The current discussions on UberConf and Google docs and the mailing list
> are very unfocused. We keep revisiting old subjects. We only hear
> fragmented opinions (except Bill's which is written down in the Google docs
> but there are many other opinions as well). Sometimes I hear opinions which
> I think are in the "wouldn't it be good" range.
>
> I think the people with real application experiences should write their
> separate requirement specifications for buffer and packet management, based
> on what functionality they actually used in their applications. This could
> be in the form of rudimentary header files, if this is the desired form of
> expression. After that we attempt to merge the requirement specs and the
> API's.
>
> The HW vendors will have to object if there is something in the unified
> API they will not be able to implement efficiently. But HW features should
> not drive the API definition. Application writers want simplicity and
> exotic HW features that are difficult to use will most likely not be used.
> DPDK will eat our lunch if we define something that is too complicated.
>
> -- Ola
>
>
> Unfortunately we consumed the hour on the first agenda item so the rest
>> need to be covered on the mailing list between now and next call.  Most
>> urgent need is consensus on Ordered Queue semantics and associated APIs.
>> Please add your thoughts to the discussion thread referenced above.  We
>> especially need input from those who are doing implementations on HW that
>> provides ordering support to ensure the APIs map feasibly to those
>> platforms.
>>
>> Thanks.
>>
>> Bill
>>
>> ---------- Forwarded message ----------
>> From: UberConference <[email protected]>
>> Date: Tue, Oct 21, 2014 at 11:09 AM
>> Subject: Weekly ODP Design Discussion Call - Call Summary
>> To: [email protected]
>>
>>
>>
>>
>>
>>  Weekly ODP Design Discussion Call
>>  October 21, 9:54AM - 11:07AM CST
>>  72 minutes
>>      Shared Files   Recording #1
>> <http://www.uberconference.com/getmp3/AMIfv968zj98edNdVFUyMZ655QC8uhbVVbfxVnk-EZqt5Zso5fT1WTKDX5227JE39B6ef8k8jUV6kg-8HNIlmH7iBZfcdWSWAytSYvJY45kiGFjv0Fx6-2S4FKuQYF_wW8gkSkw9wIfNtdSCJNPNjarAarm5S8V6lA.mp3>
>> 44.6 MB
>> ------------------------------
>>     Participants
>> In order of appearance
>>      Anders Roxell
>>  9:54AM - 11:07AM
>>  0 min
>>    <https://plus.google.com/104412829600273375417>
>>      Marshall Guillory
>>  9:55AM - 11:02AM
>>  3 min
>>    <http://www.linkedin.com/in/marshallguillory>
>> <https://plus.google.com/111357621776735070930>
>>      Keith Wiles
>>  9:55AM - 11:07AM
>>  0 min
>>    <http://www.linkedin.com/in/keithwiles>
>>      Bill Fischofer
>>  9:56AM - 9:57AM
>>  0 min
>>    <https://plus.google.com/101229890130388723366>
>>      Mike Holmes
>>  9:57AM - 9:57AM
>>  0 min
>>    <https://plus.google.com/117524006040986883990>
>>      Bill Fischofer
>>  9:57AM - 11:07AM
>>  32 min
>>    <https://plus.google.com/101229890130388723366>
>>      Barry Spinney
>>  9:58AM - 11:07AM
>>  5 min
>>        Tushar Jagad
>>  9:58AM - 11:04AM
>>
>> 0 min
>>    <https://plus.google.com/112920108061278514952>
>>      Mike Holmes
>>  9:58AM - 11:07AM
>>  0 min
>>    <https://plus.google.com/117524006040986883990>
>>      Jerin Jacob
>>  9:59AM - 11:07AM
>>  0 min
>>    <http://www.linkedin.com/in/jerinjacob>
>> <https://plus.google.com/112192941551127946856>
>>      Robert King
>>  9:59AM - 11:07AM
>>
>> 2 min
>>    <https://plus.google.com/111660058616254083029>
>>      Petri Savolainen
>>  9:59AM - 11:07AM
>>  14 min
>>    <https://plus.google.com/105472988549726753666>
>>      Gilad Ben-Yossef
>>  10:00AM - 11:07AM
>>
>> 4 min
>>    <http://www.linkedin.com/in/giladby>
>>      Wireless Caller
>>  10:00AM - 11:07AM
>>
>> 2 min
>>    <http://www.linkedin.com/in/rosenboim>
>>      Stuart Haslam
>>  10:00AM - 11:07AM
>>  0 min
>>        Alexandru Badicioiu
>>  10:00AM - 10:52AM
>>  0 min
>>    <https://plus.google.com/115638003058974280521>
>>      Job
>>  10:01AM - 11:07AM
>>  0 min
>>        Ciprian Barbu
>>  10:01AM - 11:07AM
>>
>> 0 min
>>    <https://plus.google.com/116074040956370734345>
>>      Maxim Uvarov
>>  10:01AM - 10:02AM
>>  0 min
>>    <https://plus.google.com/107909139112066426665>
>>      Ola Liljedahl
>>  10:02AM - 11:00AM
>>  0 min
>>
>>  10:02AM - 10:38AM
>>
>>  0 min
>>        Kamensky Victor
>>  10:03AM - 11:07AM
>>
>> 0 min
>>        Bala Manoharan
>>  10:04AM - 11:07AM
>>  0 min
>>    <https://plus.google.com/101798775278741634979>
>>      Raj Murali
>>  10:05AM - 10:57AM
>>  0 min
>>    <https://plus.google.com/101661069368932371920>
>>      Leonard Bush
>>  10:09AM - 11:07AM
>>
>> 0 min
>>        46709714080
>>  10:12AM - 11:07AM
>>
>> 0 min
>>        Arm Inc
>>  10:36AM - 11:02AM
>>
>> 0 min
>>           Tip: Chrome Extension    Schedule, start conferences and
>> access your conference information from anywhere in Chrome with the Chrome
>> Extension.
>> Learn More
>>
>> <https://chrome.google.com/webstore/detail/uberconference-extension/npakjcgebghlhfgcmcoehmehicdhcjbb?hl=en>
>> UberConference
>>  If you'd like to stop getting emails from UberConference, click here
>> <http://www.uberconference.com/unsubscribe/LLvfhTQDtLP9qpEQ3y3qFART3suxGq>
>>
>>
>> _______________________________________________
>> lng-odp mailing list
>> [email protected]
>> http://lists.linaro.org/mailman/listinfo/lng-odp
>>
>>
>
_______________________________________________
lng-odp mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to