DPDK patches and discussions
 help / color / mirror / Atom feed
From: Olivier MATZ <olivier.matz@6wind.com>
To: Arnon Warshavsky <arnon@qwilt.com>, Jay Rolette <rolette@infinite.io>
Cc: Don Provan <dprovan@bivio.net>, "dev@dpdk.org" <dev@dpdk.org>,
	"Zhang, Helin" <helin.zhang@intel.com>,
	"Ananyev, Konstantin" <konstantin.ananyev@intel.com>,
	John Daley <johndale@cisco.com>
Subject: Re: [dpdk-dev] removing mbuf error flags
Date: Fri, 29 Apr 2016 22:57:49 +0200	[thread overview]
Message-ID: <5723CACD.40408@6wind.com> (raw)
In-Reply-To: <CAKy9EB0OX7_yUMo2hhU0rjjEjzVMZbPOV95-N9wJ6dZ0AjorVg@mail.gmail.com>

Hi,

On 04/29/2016 10:00 PM, Arnon Warshavsky wrote:
> 
> 
> On Fri, Apr 29, 2016 at 9:24 PM, Jay Rolette <rolette@infinite.io
> <mailto:rolette@infinite.io>> wrote:
> 
>     On Fri, Apr 29, 2016 at 1:16 PM, Don Provan <dprovan@bivio.net
>     <mailto:dprovan@bivio.net>> wrote:
> 
>     > >From: Olivier Matz [mailto:olivier.matz@6wind.com <mailto:olivier.matz@6wind.com>]
>     > >Subject: [dpdk-dev] removing mbuf error flags
>     > >
>     > >My opinion is that invalid packets should not be given to the application
>     > and only a statistic counter should be incremented.
>     >
>     > The idea of an application that handles bad packets is perfectly valid.
>     > Most applications don't want to see them, of course, but, conceptually,
>     > some applications would want to ask for bad packets because they are
>     > specifically designed to handle various networking problems including those
>     > that result in bad packets that the application can look at and report.
>     > Furthermore, it makes technical sense for DPDK to support such applications.
>     >
>     > Having said that, I have no idea if that's why that field was added, and I
>     > don’t myself care if DPDK provides that feature in the future. I just
>     > thought I'd put the idea out there in case it makes any difference to you.
>     > If it were me, I'd probably decide it isn't hurting anything and not bother
>     > to remove it in case some day someone wants to implement that feature in
>     > one driver or another.
>     >
> 
>     Yep. Pretty much any networking security product needs to see malformed
>     packets.
> 
>     Jay
> 
> 
> +1 for letting the application see bad packets and decide what to do
> with them.
> We had some zero order insertion issues in the past where the ability to
> let the application capture malformed/unexpected packets was very helpful.

The point is today it's broken, and no application running on top of
DPDK check these flags because they are set to 0. If we decide to
assign a value to these flags, it will break the working applications
because they don't expect to receive invalid packets. Maybe a proper
solution would be to enable these flags on demand in PMD configuration,
and add a feature flag for this feature.

I think we should not keep things half-done too long. It's
confusing and useless as-is.

If some applications really need to see these malformed packets,
the API has to define in which conditions these flags are set and
what is expected in the mbuf data when one of these flags is set.
The only documentation we have now is:

  PKT_RX_OVERSIZE: Num of desc of an RX pkt oversize.
  PKT_RX_HBUF_OVERFLOW: Header buffer overflow.
  PKT_RX_RECIP_ERR: Hardware processing error.
  PKT_RX_MAC_ERR: MAC error.

If it's not better defined, I don't know how an application could
use these flags.

Also, the PMDs should not behave differently by default.

If someone commit on working on this in the comming weeks, I'll be
happy to help, else I still think the current state has to be reverted.


Regards,
Olivier

  reply	other threads:[~2016-04-29 20:58 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-29 12:25 Olivier Matz
2016-04-29 17:47 ` John Daley (johndale)
2016-04-29 18:16 ` Don Provan
2016-04-29 18:24   ` Jay Rolette
2016-04-29 20:00     ` Arnon Warshavsky
2016-04-29 20:57       ` Olivier MATZ [this message]
2016-04-30  1:41         ` Don Provan
2016-05-10  8:40           ` [dpdk-dev] [RFC] mbuf: remove unused rx " Olivier Matz
2016-05-12  1:32             ` John Daley (johndale)
2016-05-12  9:25               ` Olivier MATZ
2016-05-23  7:56                 ` [dpdk-dev] [PATCH] mbuf: remove unused Rx " Olivier Matz
2016-06-13 11:39                   ` Olivier Matz
2016-06-13 12:39                   ` Ananyev, Konstantin
2016-06-13 14:00                     ` Bruce Richardson
2016-06-13 12:42                   ` Ananyev, Konstantin
2016-06-13 12:49                     ` Olivier Matz
2016-06-13 13:25                       ` Bruce Richardson
2016-06-13 13:52                         ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5723CACD.40408@6wind.com \
    --to=olivier.matz@6wind.com \
    --cc=arnon@qwilt.com \
    --cc=dev@dpdk.org \
    --cc=dprovan@bivio.net \
    --cc=helin.zhang@intel.com \
    --cc=johndale@cisco.com \
    --cc=konstantin.ananyev@intel.com \
    --cc=rolette@infinite.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).