amd-xgbe: Add receive buffer unavailable statistic
Add a statistic that tracks how many times an interrupt is generated for a receive buffer not being available to the hardware which prevents the hardware from being able to DMA the received data. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
9c439e4b73
Коммит
72c9ac4e1f
|
@ -360,6 +360,9 @@ static irqreturn_t xgbe_isr(int irq, void *data)
|
|||
}
|
||||
}
|
||||
|
||||
if (XGMAC_GET_BITS(dma_ch_isr, DMA_CH_SR, RBU))
|
||||
pdata->ext_stats.rx_buffer_unavailable++;
|
||||
|
||||
/* Restart the device on a Fatal Bus Error */
|
||||
if (XGMAC_GET_BITS(dma_ch_isr, DMA_CH_SR, FBE))
|
||||
schedule_work(&pdata->restart_work);
|
||||
|
|
|
@ -179,6 +179,7 @@ static const struct xgbe_stats xgbe_gstring_stats[] = {
|
|||
XGMAC_MMC_STAT("rx_watchdog_errors", rxwatchdogerror),
|
||||
XGMAC_MMC_STAT("rx_pause_frames", rxpauseframes),
|
||||
XGMAC_EXT_STAT("rx_split_header_packets", rx_split_header_packets),
|
||||
XGMAC_EXT_STAT("rx_buffer_unavailable", rx_buffer_unavailable),
|
||||
};
|
||||
|
||||
#define XGBE_STATS_COUNT ARRAY_SIZE(xgbe_gstring_stats)
|
||||
|
|
|
@ -582,6 +582,7 @@ struct xgbe_mmc_stats {
|
|||
struct xgbe_ext_stats {
|
||||
u64 tx_tso_packets;
|
||||
u64 rx_split_header_packets;
|
||||
u64 rx_buffer_unavailable;
|
||||
};
|
||||
|
||||
struct xgbe_hw_if {
|
||||
|
|
Загрузка…
Ссылка в новой задаче