All of lore.kernel.org
 help / color / mirror / Atom feed
From: Magnus Karlsson <magnus.karlsson@gmail.com>
To: Ryan Goodfellow <rgoodfel@isi.edu>
Cc: "xdp-newbies@vger.kernel.org" <xdp-newbies@vger.kernel.org>
Subject: Re: zero-copy between interfaces
Date: Wed, 15 Jan 2020 09:20:30 +0100	[thread overview]
Message-ID: <CAJ8uoz1Nf+Fsg40tfdnMenFiCjRBJN9maY9rVo--trt+Uwkqwg@mail.gmail.com> (raw)
In-Reply-To: <CAJ8uoz2VTXAT9ryF9Ls2JjacEw0Bc23t9w2jDEoMdA0dRc6Aaw@mail.gmail.com>

On Wed, Jan 15, 2020 at 8:40 AM Magnus Karlsson
<magnus.karlsson@gmail.com> wrote:
>
> On Wed, Jan 15, 2020 at 2:41 AM Ryan Goodfellow <rgoodfel@isi.edu> wrote:
> >
> > On Tue, Jan 14, 2020 at 03:52:50PM -0500, Ryan Goodfellow wrote:
> > > On Tue, Jan 14, 2020 at 10:59:19AM +0100, Magnus Karlsson wrote:
> > > >
> > > > Just sent out a patch on the mailing list. Would be great if you could
> > > > try it out.
> > >
> > > Thanks for the quick turnaround. I gave this patch a go, both in the bpf-next
> > > tree and manually applied to the 5.5.0-rc3 branch I've been working with up to
> > > this point. It does allow for allocating more memory, however packet
> > > forwarding no longer works. I did not see any complaints from dmesg, but here
> > > is an example iperf3 session from a client that worked before.
> > >
> > > ry@xd2:~$ iperf3 -c 10.1.0.2
> > > Connecting to host 10.1.0.2, port 5201
> > > [  5] local 10.1.0.1 port 53304 connected to 10.1.0.2 port 5201
> > > [ ID] Interval           Transfer     Bitrate         Retr  Cwnd
> > > [  5]   0.00-1.00   sec  5.91 MBytes  49.5 Mbits/sec    2   1.41 KBytes
> > > [  5]   1.00-2.00   sec  0.00 Bytes  0.00 bits/sec    1   1.41 KBytes
> > > [  5]   2.00-3.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes
> > > [  5]   3.00-4.00   sec  0.00 Bytes  0.00 bits/sec    1   1.41 KBytes
> > > [  5]   4.00-5.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes
> > > [  5]   5.00-6.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes
> > > [  5]   6.00-7.00   sec  0.00 Bytes  0.00 bits/sec    1   1.41 KBytes
> > > [  5]   7.00-8.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes
> > > [  5]   8.00-9.00   sec  0.00 Bytes  0.00 bits/sec    0   1.41 KBytes
> > > ^C[  5]  10.00-139.77 sec  0.00 Bytes  0.00 bits/sec    4   1.41 KBytes
> > > - - - - - - - - - - - - - - - - - - - - - - - - -
> > > [ ID] Interval           Transfer     Bitrate         Retr
> > > [  5]   0.00-139.77 sec  5.91 MBytes   355 Kbits/sec    9             sender
> > > [  5]   0.00-139.77 sec  0.00 Bytes  0.00 bits/sec                  receiver
> > > iperf3: interrupt - the client has terminated
> > >
> > > I'll continue to investigate and report back with anything that I find.
> >
> > Interestingly I found this behavior to exist in the bpf-next tree independent
> > of the patch being present.
>
> Ryan,
>
> Could you please do a bisect on it? In the 12 commits after the merge
> commit below there are number of sensitive rewrites of the ring access
> functions. Maybe one of them breaks your code. When you say "packet
> forwarding no longer works", do you mean it works for a second or so,
> then no packets come through? What HW are you using?
>
> commit ce3cec27933c069d2015a81e59b93eb656fe7ee4
> Merge: 99cacdc 1d9cb1f
> Author: Alexei Starovoitov <ast@kernel.org>
> Date:   Fri Dec 20 16:00:10 2019 -0800
>
>     Merge branch 'xsk-cleanup'
>
>     Magnus Karlsson says:
>
>     ====================
>     This patch set cleans up the ring access functions of AF_XDP in hope
>     that it will now be easier to understand and maintain. I used to get a
>     headache every time I looked at this code in order to really understand it,
>     but now I do think it is a lot less painful.
>     <snip>
>
> /Magnus

I see that you have debug messages in your application. Could you
please run with those on and send me the output so I can see where it
stops. A bisect that pin-points what commit that breaks your program
plus the debug output should hopefully send us on the right path for a
fix.

Thanks: Magnus

> > I also gave the 5.5.0-rc6 branch a try (without the patch) and packets forward
> > OK.
> >
> > --
> > ~ ry

  reply	other threads:[~2020-01-15  8:20 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-13  0:18 zero-copy between interfaces Ryan Goodfellow
2020-01-13  9:16 ` Magnus Karlsson
2020-01-13 10:43   ` Toke Høiland-Jørgensen
2020-01-13 15:25     ` Ryan Goodfellow
2020-01-13 17:09       ` Toke Høiland-Jørgensen
2020-01-14  7:47         ` Magnus Karlsson
2020-01-14  8:11           ` Toke Høiland-Jørgensen
2020-01-13 15:11   ` Ryan Goodfellow
2020-01-14  9:59     ` Magnus Karlsson
2020-01-14 20:52       ` Ryan Goodfellow
2020-01-15  1:41         ` Ryan Goodfellow
2020-01-15  7:40           ` Magnus Karlsson
2020-01-15  8:20             ` Magnus Karlsson [this message]
2020-01-16  2:04               ` Ryan Goodfellow
2020-01-16 14:32                 ` Magnus Karlsson
2020-01-17  9:45                   ` Magnus Karlsson
2020-01-17 17:05                     ` Ryan Goodfellow
2020-01-21  7:34                 ` Magnus Karlsson
2020-01-21 13:40                   ` Maxim Mikityanskiy
2020-01-22 21:43                     ` Ryan Goodfellow
2020-01-27 14:01                       ` Maxim Mikityanskiy
2020-01-27 15:54                         ` Magnus Karlsson
2020-01-30  9:37                           ` Maxim Mikityanskiy
2020-01-30  9:59                             ` Magnus Karlsson
2020-01-30 11:40                               ` Magnus Karlsson
2020-02-04 16:10                                 ` Magnus Karlsson
2020-02-05 13:31                                   ` Magnus Karlsson
2020-02-06 14:56                                     ` Maxim Mikityanskiy
2020-02-07  9:01                                       ` Magnus Karlsson
2020-01-17 17:40         ` William Tu
2020-01-13 11:41 ` Jesper Dangaard Brouer
2020-01-13 15:28   ` Ryan Goodfellow
2020-01-13 17:04     ` Jesper Dangaard Brouer
2020-01-17 17:54       ` Ryan Goodfellow
2020-01-18 10:14         ` Jesper Dangaard Brouer
2020-01-18 14:08           ` Ryan Goodfellow
2020-01-26  4:53             ` Dan Siemon
2020-01-17 12:32 ` Björn Töpel
2020-01-17 12:32   ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?=
2020-01-17 17:16   ` Ryan Goodfellow
2020-01-17 17:16     ` [Intel-wired-lan] " Ryan Goodfellow
2020-01-17 18:10     ` Ryan Goodfellow
2020-01-17 18:10       ` [Intel-wired-lan] " Ryan Goodfellow
2020-01-20  8:24     ` Magnus Karlsson
2020-01-20  8:24       ` [Intel-wired-lan] " Magnus Karlsson
2020-01-20 18:33       ` Ryan Goodfellow
2020-01-20 18:33         ` [Intel-wired-lan] " Ryan Goodfellow
2020-01-20 17:04     ` Björn Töpel
2020-01-20 17:04       ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?=

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=CAJ8uoz1Nf+Fsg40tfdnMenFiCjRBJN9maY9rVo--trt+Uwkqwg@mail.gmail.com \
    --to=magnus.karlsson@gmail.com \
    --cc=rgoodfel@isi.edu \
    --cc=xdp-newbies@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.