]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net/mlx5: Extend Ethtool loopback selftest to support non-linear SKB
authorAlexei Lazar <alazar@nvidia.com>
Sun, 9 Feb 2025 10:17:15 +0000 (12:17 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 4 Jun 2025 12:37:05 +0000 (14:37 +0200)
[ Upstream commit 95b9606b15bb3ce1198d28d2393dd0e1f0a5f3e9 ]

Current loopback test validation ignores non-linear SKB case in
the SKB access, which can lead to failures in scenarios such as
when HW GRO is enabled.
Linearize the SKB so both cases will be handled.

Signed-off-by: Alexei Lazar <alazar@nvidia.com>
Reviewed-by: Dragos Tatulea <dtatulea@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Link: https://patch.msgid.link/20250209101716.112774-15-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/en_selftest.c

index ce8ab1f0187693c8f226a52ab64b75d04f300078..c380340b816651de23ffe93021285abfb01523b5 100644 (file)
@@ -188,6 +188,9 @@ mlx5e_test_loopback_validate(struct sk_buff *skb,
        struct udphdr *udph;
        struct iphdr *iph;
 
+       if (skb_linearize(skb))
+               goto out;
+
        /* We are only going to peek, no need to clone the SKB */
        if (MLX5E_TEST_PKT_SIZE - ETH_HLEN > skb_headlen(skb))
                goto out;