|
@@ -849,6 +849,7 @@ static bool ixgbe_clean_rx_irq(struct ixgbe_q_vector *q_vector,
|
|
break;
|
|
break;
|
|
(*work_done)++;
|
|
(*work_done)++;
|
|
|
|
|
|
|
|
+ rmb(); /* read descriptor and rx_buffer_info after status DD */
|
|
if (rx_ring->flags & IXGBE_RING_RX_PS_ENABLED) {
|
|
if (rx_ring->flags & IXGBE_RING_RX_PS_ENABLED) {
|
|
hdr_info = le16_to_cpu(ixgbe_get_hdr_info(rx_desc));
|
|
hdr_info = le16_to_cpu(ixgbe_get_hdr_info(rx_desc));
|
|
len = (hdr_info & IXGBE_RXDADV_HDRBUFLEN_MASK) >>
|
|
len = (hdr_info & IXGBE_RXDADV_HDRBUFLEN_MASK) >>
|