Hi, On Wed, 2020-10-07 at 01:42 -0700, Eric Dumazet wrote: > @@ -1232,9 +1233,10 @@ static rx_handler_result_t macsec_handle_frame(struct > sk_buff **pskb) > macsec_rxsc_put(rx_sc); > > skb_orphan(skb); > + len = skb->len; > ret = gro_cells_receive(&macsec->gro_cells, skb); > if (ret == NET_RX_SUCCESS) > - count_rx(dev, skb->len); > + count_rx(dev, len); > else > macsec->secy.netdev->stats.rx_dropped++;
I'm sorry I'm low on coffee, but I can't see the race?!? here we are in a BH section, and the above code dereference the skb only if it's has been enqueued into the gro_cells napi. It could be dequeued/dropped only after we leave this section ?!? Thanks, Paolo