Hi, > -----Original Message----- > From: Alexander Kozyrev <akozy...@nvidia.com> > Sent: Thursday, January 13, 2022 4:32 PM > To: dev@dpdk.org > Cc: sta...@dpdk.org; Raslan Darawsheh <rasl...@nvidia.com>; Slava > Ovsiienko <viachesl...@nvidia.com>; Matan Azrad <ma...@nvidia.com> > Subject: [PATCH] net/mlx5: fix maximum packet headers size for TSO > > The maximum packet headers size for TSO is calculated as a sum of > Ethernet, VLAN, IPv6 and TCP headers (plus inner headers). > The rationale behind choosing IPv6 and TCP is their headers > are bigger than IPv4 and UDP respectively, giving us the maximum > possible headers size. But it is not true for L3 headers. > IPv4 header size (20 bytes) is smaller than IPv6 header size > (40 bytes) only in the default case. There are up to 10 > optional header fields called Options in case IHL > 5. > This means that the maximum size of the IPv4 header is 60 bytes. > > Choosing the wrong maximum packets headers size causes inability > to transmit multi-segment TSO packets with IPv4 Options present. > PMD check that it is possible to inline all the packet headers > and the packet headers size exceeds the expected maximum size. > The maximum packet headers size was set to 192 bytes before, > but its value has been reduced during Tx path refactor activity. > Restore the proper maximum packet headers size for TSO. > > Fixes: 50724e1 ("net/mlx5: update Tx definitions") > Cc: sta...@dpdk.org > > Signed-off-by: Alexander Kozyrev <akozy...@nvidia.com> > Acked-by: Viacheslav Ovsiienko <viachesl...@nvidia.com>
Patch applied to next-net-mlx, Kindest regards, Raslan Darawsheh