[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220309204405.58079350@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
Date: Wed, 9 Mar 2022 20:44:05 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: "David S . Miller" <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Alexander Duyck <alexanderduyck@...com>,
Coco Li <lixiaoyan@...gle.com>,
Eric Dumazet <edumazet@...gle.com>,
Tariq Toukan <tariqt@...dia.com>,
Saeed Mahameed <saeedm@...dia.com>,
Leon Romanovsky <leon@...nel.org>
Subject: Re: [PATCH v3 net-next 14/14] mlx5: support BIG TCP packets
On Wed, 9 Mar 2022 16:28:46 -0800 Eric Dumazet wrote:
> @@ -918,12 +953,27 @@ void mlx5i_sq_xmit(struct mlx5e_txqsq *sq, struct sk_buff *skb,
> eseg->mss = attr.mss;
>
> if (attr.ihs) {
> - memcpy(eseg->inline_hdr.start, skb->data, attr.ihs);
> + if (unlikely(attr.hopbyhop)) {
> + /* remove the HBH header.
> + * Layout: [Ethernet header][IPv6 header][HBH][TCP header]
> + */
> + memcpy(eseg->inline_hdr.start, skb->data, ETH_HLEN + sizeof(*h6));
> + h6 = (struct ipv6hdr *)((char *)eseg->inline_hdr.start + ETH_HLEN);
> + h6->nexthdr = IPPROTO_TCP;
> + /* Copy the TCP header after the IPv6 one */
> + memcpy(h6 + 1,
> + skb->data + ETH_HLEN + sizeof(*h6) +
> + sizeof(struct hop_jumbo_hdr),
> + tcp_hdrlen(skb));
> + /* Leave ipv6 payload_len set to 0, as LSO v2 specs request. */
> + } else {
> + memcpy(eseg->inline_hdr.start, skb->data, attr.ihs);
> + }
Compiler says there's no h6 in mlx5i_sq_xmit().
Powered by blists - more mailing lists