[PATCH net-next 3/3] net/mlx5e: use skb_share_check() in the loopback selftest hook
Tariq Toukan
tariqt at nvidia.com
Mon Oct 12 12:07:50 PDT 2026
On 07/10/2026 21:29, Nicolai Buchwitz wrote:
> The loopback hook gets a shared skb when another ETH_P_IP handler is
> bound to the device. skb_linearize() on a non-linear frame then hits
> BUG_ON(skb_shared()).
>
> Call skb_share_check() before linearizing the skb.
>
> Fixes: 95b9606b15bb ("net/mlx5: Extend Ethtool loopback selftest to support non-linear SKB")
> Signed-off-by: Nicolai Buchwitz <nb at tipi-net.de>
> ---
> drivers/net/ethernet/mellanox/mlx5/core/en_selftest.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_selftest.c b/drivers/net/ethernet/mellanox/mlx5/core/en_selftest.c
> index 1dcdb86690bb..8eb9a9469549 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/en_selftest.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_selftest.c
> @@ -166,6 +166,10 @@ mlx5e_test_loopback_validate(struct sk_buff *skb,
> struct udphdr *udph;
> struct iphdr *iph;
>
> + skb = skb_share_check(skb, GFP_ATOMIC);
> + if (!skb)
> + goto out;
> +
> if (skb_linearize(skb))
> goto out;
>
>
Reviewed-by: Tariq Toukan <tariqt at nvidia.com>
More information about the linux-arm-kernel
mailing list