Hi all,

Today's linux-next merge of the net-next tree got a conflict in:

  drivers/net/ethernet/mellanox/mlx5/core/en_tx.c

between commit:

  b081da5ee186 ("net/mlx5e: Add rx/tx bytes software counters")

from the net tree and commits:

  9879515895ff ("net/mlx5e: Add TX stateless offloads for tunneling")
  89db09eb5979 ("net/mlx5e: Add TX inner packet counters")

from the net-next tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell

diff --cc drivers/net/ethernet/mellanox/mlx5/core/en_tx.c
index bb4eeeb007de,c34f4f3e9537..000000000000
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c
@@@ -199,15 -203,21 +204,20 @@@ static netdev_tx_t mlx5e_sq_xmit(struc
        }
  
        if (skb_is_gso(skb)) {
-               u32 payload_len;
- 
                eseg->mss    = cpu_to_be16(skb_shinfo(skb)->gso_size);
                opcode       = MLX5_OPCODE_LSO;
-               ihs          = skb_transport_offset(skb) + tcp_hdrlen(skb);
-               payload_len  = skb->len - ihs;
+ 
+               if (skb->encapsulation) {
+                       ihs = skb_inner_transport_offset(skb) + 
inner_tcp_hdrlen(skb);
+                       sq->stats.tso_inner_packets++;
+                       sq->stats.tso_inner_bytes += skb->len - ihs;
+               } else {
+                       ihs = skb_transport_offset(skb) + tcp_hdrlen(skb);
+                       sq->stats.tso_packets++;
+                       sq->stats.tso_bytes += skb->len - ihs;
+               }
+ 
 -              wi->num_bytes = skb->len +
 -                              (skb_shinfo(skb)->gso_segs - 1) * ihs;
 +              num_bytes = skb->len + (skb_shinfo(skb)->gso_segs - 1) * ihs;
-               sq->stats.tso_packets++;
-               sq->stats.tso_bytes += payload_len;
        } else {
                bf = sq->bf_budget &&
                     !skb->xmit_more &&

Reply via email to