[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87cyo2fgnm.fsf@kurt.kurt.home>
Date: Thu, 27 Jun 2024 19:18:37 +0200
From: Kurt Kanzenbach <kurt@...utronix.de>
To: Benjamin Steinke <benjamin.steinke@...s-audio.com>, Sriram Yagnaraman
<sriram.yagnaraman@....tech>
Cc: intel-wired-lan@...osl.org, Maciej Fijalkowski
<maciej.fijalkowski@...el.com>, Jesper Dangaard Brouer <hawk@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>, netdev@...r.kernel.org, Jonathan
Lemon <jonathan.lemon@...il.com>, John Fastabend
<john.fastabend@...il.com>, Alexei Starovoitov <ast@...nel.org>,
Björn Töpel <bjorn@...nel.org>, Eric Dumazet
<edumazet@...gle.com>, Sriram
Yagnaraman <sriram.yagnaraman@....tech>, Tony Nguyen
<anthony.l.nguyen@...el.com>, Jakub
Kicinski <kuba@...nel.org>, bpf@...r.kernel.org, Paolo Abeni
<pabeni@...hat.com>, "David S . Miller" <davem@...emloft.net>, Magnus
Karlsson <magnus.karlsson@...el.com>
Subject: Re: [Intel-wired-lan] [PATCH iwl-next v4 0/4] igb: Add support for
AF_XDP zero-copy
Hi Benjamin,
On Thu Jun 27 2024, Benjamin Steinke wrote:
> On Thursday, 27 June 2024, 09:07:55 CEST, Kurt Kanzenbach wrote:
>> Hi Sriram,
>>
>> On Fri Aug 04 2023, Sriram Yagnaraman wrote:
>> > The first couple of patches adds helper funcctions to prepare for AF_XDP
>> > zero-copy support which comes in the last couple of patches, one each
>> > for Rx and TX paths.
>> >
>> > As mentioned in v1 patchset [0], I don't have access to an actual IGB
>> > device to provide correct performance numbers. I have used Intel 82576EB
>> > emulator in QEMU [1] to test the changes to IGB driver.
>>
>> I gave this patch series a try on a recent kernel and silicon
>> (i210). There was one issue in igb_xmit_zc(). But other than that it
>> worked very nicely.
>
> Hi Kurt and Sriram,
>
> I recently tried the patches on a 6.1 kernel. On two different devices i210 &
> i211 I couldn't see any packets being transmitted on the wire. Perhaps caused
> by the issue in igb_xmit_zc() you mentioned, Kurt? Can you share your findings,
> please?
Yeah, that's exactly the issue.
Following igb_xmit_xdp_ring() I've added PAYLEN to the Tx descriptor
instead of setting it to zero:
igb_xmit_zc()
{
[...]
/* put descriptor type bits */
cmd_type = E1000_ADVTXD_DTYP_DATA | E1000_ADVTXD_DCMD_DEXT |
E1000_ADVTXD_DCMD_IFCS;
olinfo_status = descs[i].len << E1000_ADVTXD_PAYLEN_SHIFT;
cmd_type |= descs[i].len | IGB_TXD_DCMD;
tx_desc->read.cmd_type_len = cpu_to_le32(cmd_type);
tx_desc->read.olinfo_status = cpu_to_le32(olinfo_status);
[...]
}
Afterwards packets are transmitted on the wire.
>
> RX seemed to work on first sight.
>
Yes, Rx works even with PTP enabled.
>> It seems like it hasn't been merged yet. Do you have any plans for
>> continuing to work on this?
>
> I can offer to do testing and debugging on real hardware if this helps.
Great. Thanks!
Download attachment "signature.asc" of type "application/pgp-signature" (862 bytes)
Powered by blists - more mailing lists