Maciej Fijalkowski wrote: > Tx side sets EOP and RS bits on descriptors to indicate that a > particular descriptor is the last one and needs to generate an irq when > it was sent. These bits should not be checked on completion path > regardless whether it's the Tx or the Rx. DD bit serves this purpose and > it indicates that a particular descriptor is either for Rx or was > successfully Txed. > > Look at DD bit being set in ice_lbtest_receive_frames() instead of EOP > and RS pair. > > Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@xxxxxxxxx> Is this a bugfix? If so it should go to bpf tree. > --- > drivers/net/ethernet/intel/ice/ice_ethtool.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/intel/ice/ice_ethtool.c b/drivers/net/ethernet/intel/ice/ice_ethtool.c > index 1e71b70f0e52..b6275a29fa0d 100644 > --- a/drivers/net/ethernet/intel/ice/ice_ethtool.c > +++ b/drivers/net/ethernet/intel/ice/ice_ethtool.c > @@ -658,7 +658,7 @@ static int ice_lbtest_receive_frames(struct ice_rx_ring *rx_ring) > rx_desc = ICE_RX_DESC(rx_ring, i); > > if (!(rx_desc->wb.status_error0 & > - cpu_to_le16(ICE_TX_DESC_CMD_EOP | ICE_TX_DESC_CMD_RS))) > + cpu_to_le16(BIT(ICE_RX_FLEX_DESC_STATUS0_DD_S)))) > continue; > > rx_buf = &rx_ring->rx_buf[i]; > -- > 2.27.0 >