On Tue, 2015-11-03 at 09:37 +0000, Madalin-Cristian Bucur wrote: > > -----Original Message----- > > From: Joakim Tjernlund [mailto:joakim.tjernl...@transmode.se] > > > > On Mon, 2015-11-02 at 19:31 +0200, Madalin Bucur wrote: > > > + if (unlikely(fd_status & FM_FD_STAT_RX_ERRORS) != 0) { > > > + if (net_ratelimit()) > > > + netif_warn(priv, hw, net_dev, "FD status = > > 0x%08x\n", > > > + fd_status & FM_FD_STAT_RX_ERRORS); > > > + > > > + percpu_stats->rx_errors++; > > > + goto _release_frame; > > > + } > > > > I cannot find any detailed error accounting(maybe I am not looking hard > > enough) but I > > would appreciate if both TX and RX errors where better > > accounted(rx_length_errors, rx_frame_errors, > > rx_crc_errors, rx_fifo_errors etc.). This has helped me many times in the > > past diagnosing > > board HW problems. > > > > Jocke > > Hi Jocke, > > There are some error counters exported through ethtool (used to be debugfs). > FMan HW provides more debug information than we currently export, that will be > improved in the future but given the current priority of having a codebase as > small and reviewable as possible we had to drop some things from the initial > submission.
I know, but ethtool is not always available. Even the old fec_main.c has it: if (status & (BD_ENET_RX_LG | BD_ENET_RX_SH | BD_ENET_RX_NO | BD_ENET_RX_CR | BD_ENET_RX_OV)) { ndev->stats.rx_errors++; if (status & (BD_ENET_RX_LG | BD_ENET_RX_SH)) { /* Frame too long or too short. */ ndev->stats.rx_length_errors++; } if (status & BD_ENET_RX_NO) /* Frame alignment */ ndev->stats.rx_frame_errors++; if (status & BD_ENET_RX_CR) /* CRC Error */ ndev->stats.rx_crc_errors++; if (status & BD_ENET_RX_OV) /* FIFO overrun */ ndev->stats.rx_fifo_errors++; } so it is just a few more lines ... Pretty please ? :) Jocke _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev