|
@@ -1620,6 +1620,7 @@ static bool ixgbe_alloc_mapped_page(struct ixgbe_ring *rx_ring,
|
|
|
bi->page = page;
|
|
|
bi->page_offset = ixgbe_rx_offset(rx_ring);
|
|
|
bi->pagecnt_bias = 1;
|
|
|
+ rx_ring->rx_stats.alloc_rx_page++;
|
|
|
|
|
|
return true;
|
|
|
}
|
|
@@ -6794,6 +6795,7 @@ void ixgbe_update_stats(struct ixgbe_adapter *adapter)
|
|
|
u32 i, missed_rx = 0, mpc, bprc, lxon, lxoff, xon_off_tot;
|
|
|
u64 non_eop_descs = 0, restart_queue = 0, tx_busy = 0;
|
|
|
u64 alloc_rx_page_failed = 0, alloc_rx_buff_failed = 0;
|
|
|
+ u64 alloc_rx_page = 0;
|
|
|
u64 bytes = 0, packets = 0, hw_csum_rx_error = 0;
|
|
|
|
|
|
if (test_bit(__IXGBE_DOWN, &adapter->state) ||
|
|
@@ -6814,6 +6816,7 @@ void ixgbe_update_stats(struct ixgbe_adapter *adapter)
|
|
|
for (i = 0; i < adapter->num_rx_queues; i++) {
|
|
|
struct ixgbe_ring *rx_ring = adapter->rx_ring[i];
|
|
|
non_eop_descs += rx_ring->rx_stats.non_eop_descs;
|
|
|
+ alloc_rx_page += rx_ring->rx_stats.alloc_rx_page;
|
|
|
alloc_rx_page_failed += rx_ring->rx_stats.alloc_rx_page_failed;
|
|
|
alloc_rx_buff_failed += rx_ring->rx_stats.alloc_rx_buff_failed;
|
|
|
hw_csum_rx_error += rx_ring->rx_stats.csum_err;
|
|
@@ -6821,6 +6824,7 @@ void ixgbe_update_stats(struct ixgbe_adapter *adapter)
|
|
|
packets += rx_ring->stats.packets;
|
|
|
}
|
|
|
adapter->non_eop_descs = non_eop_descs;
|
|
|
+ adapter->alloc_rx_page = alloc_rx_page;
|
|
|
adapter->alloc_rx_page_failed = alloc_rx_page_failed;
|
|
|
adapter->alloc_rx_buff_failed = alloc_rx_buff_failed;
|
|
|
adapter->hw_csum_rx_error = hw_csum_rx_error;
|