Linux Manual Pages development
 help / color / mirror / Atom feed
From: Neil Horman <nhorman-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
To: Carsten Andrich
	<carsten.andrich-hs6bpBdVsEZfm0AUMx9V0g@public.gmane.org>
Cc: "Michael Kerrisk (man-pages)"
	<mtk.manpages-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	lnx-man <linux-man-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Willem de Bruijn
	<willemb-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
	Daniel Borkmann
	<dborkman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	Stefan Puiu <stefan.puiu-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: Re: [patch] getsockopt.2, packet.7: improve sockopt documentation for packet sockets
Date: Mon, 28 Apr 2014 09:34:44 -0400	[thread overview]
Message-ID: <20140428133444.GD16041@hmsreliant.think-freely.org> (raw)
In-Reply-To: <1398465760.6683.33.camel-FQO4gtnRtnzkVFMGpb/cPg@public.gmane.org>

On Sat, Apr 26, 2014 at 12:42:40AM +0200, Carsten Andrich wrote:
> Am Freitag, den 25.04.2014, 07:02 -0400 schrieb Neil Horman:
> > On Thu, Apr 24, 2014 at 06:14:17PM +0200, Carsten Andrich wrote:
> > [...]
> > > +When a malformed packet is encountered on a transmit ring, the default is
> > > +to reset its
> > > +.I tp_status
> > > +to
> > > +.BR TP_STATUS_WRONG_FORMAT
> > > +and abort the transmission immediately (it and following packets are left
> > > +lingering on the ring).
> > 
> > I'm not sure this is 100% clear.  Any of these error status flags leave the
> > packet in memory on the ring.  WRONG_FORMAT, doesn't do anything special here.
> 
> The RX-related flags simply denote additional information, which are not
> essential for RX ring operation, i.e. it won't hurt you if you ignore
> them.
> 
> TP_STATUS_WRONG_FORMAT is different. It's only set if the transmission
> process is aborted by the kernel. If this occurs the sendto()-call will
> return EINVAL. In this case you have to walk the ring backwards from the
> current userspace frame pointer, look for a frame with tp_status ==
> TP_STATUS_WRONG_FORMAT, fix it and set its tp_status =
> TP_STATUS_SEND_REQUEST. I assume PACKET_LOSS was introduced to obviate
> the need to do this.
> 
> This should qualify TP_STATUS_WRONG_FORMAT as special. This behaviour
> probably deserves a little more detail in the man-page, but I'll defer
> that until the general overhaul takes place.
> 
> I've hacked up a demonstration and attached it.
> Sorry, I'm a freedom-fighter against the 80-character-oppression :)
> 
> I also updated my patch for merge-less application to current
> git-master:
> 
I'm fine with the example, its the specific reference to the statement "it and
following packets are left lingering on the ring".  Thats not special in
relation to WRONG_FORMAT.  Even if a packet transmits successfully and gets its
status set back to AVAILABLE, the data of the packet is still in the ring and
can be recovered by user space.  Thats all I'm getting at.
Neil


--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2014-04-28 13:34 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-24 16:14 [patch] getsockopt.2, packet.7: improve sockopt documentation for packet sockets Carsten Andrich
     [not found] ` <1398356057.1966.14.camel-DYJrb7SVE5twFLYp8hBm2A@public.gmane.org>
2014-04-25 11:02   ` Neil Horman
     [not found]     ` <20140425110218.GA14074-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2014-04-25 22:42       ` Carsten Andrich
     [not found]         ` <1398465760.6683.33.camel-FQO4gtnRtnzkVFMGpb/cPg@public.gmane.org>
2014-04-28 13:34           ` Neil Horman [this message]
     [not found]             ` <20140428133444.GD16041-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2014-04-28 15:23               ` Carsten Andrich
     [not found]                 ` <1398698632.2988.10.camel-FQO4gtnRtnzkVFMGpb/cPg@public.gmane.org>
2014-04-28 17:28                   ` Neil Horman
     [not found]                     ` <20140428172815.GG16041-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2014-04-28 18:12                       ` Carsten Andrich
     [not found]                         ` <1398708750.2988.18.camel-FQO4gtnRtnzkVFMGpb/cPg@public.gmane.org>
2014-04-29 10:51                           ` Neil Horman
     [not found]                             ` <20140429105118.GA11686-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2014-04-29 11:16                               ` Michael Kerrisk (man-pages)
2014-04-29 12:02                           ` Michael Kerrisk (man-pages)
     [not found]                             ` <535F94D5.8050307-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-04-29 12:53                               ` Carsten Andrich
2014-04-29 12:58                                 ` Michael Kerrisk (man-pages)
  -- strict thread matches above, loose matches on Subject: below --
2014-04-29 11:22 Carsten Andrich
     [not found] ` <o3okqw7ix4iaf8ukfb6ufhie.1398770460424-2ueSQiBKiTY7tOexoI0I+QC/G2K4zDHf@public.gmane.org>
2014-04-29 13:11   ` Neil Horman

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=20140428133444.GD16041@hmsreliant.think-freely.org \
    --to=nhorman-2xusbdqka4r54taoqtywwq@public.gmane.org \
    --cc=carsten.andrich-hs6bpBdVsEZfm0AUMx9V0g@public.gmane.org \
    --cc=dborkman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=linux-man-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mtk.manpages-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=stefan.puiu-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=willemb-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
    /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