> /* Save skb pointer */ > - txq->tx_skbuff[index] = skb; > + txq->tx_buf[index].skb = skb; What about txq->tx_buf[index].type ? > @@ -862,7 +860,7 @@ static int fec_enet_txq_submit_tso(struct fec_enet_priv_tx_q *txq, > } > > /* Save skb pointer */ > - txq->tx_skbuff[index] = skb; > + txq->tx_buf[index].skb = skb; here as well. > + /* restore default tx buffer type: FEC_TXBUF_T_SKB */ > + txq->tx_buf[i].type = FEC_TXBUF_T_SKB; Seems error prone. It would be safer to explicitly set it next to assigning .skb/.xdp. Andrew