Pārlūkot izejas kodu

net: systemport: Fix software statistics for SYSTEMPORT Lite

With SYSTEMPORT Lite we have holes in our statistics layout that make us
skip over the hardware MIB counters, bcm_sysport_get_stats() was not
taking that into account resulting in reporting 0 for all SW-maintained
statistics, fix this by skipping accordingly.

Fixes: 44a4524c54af ("net: systemport: Add support for SYSTEMPORT Lite")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Florian Fainelli 8 gadi atpakaļ
vecāks
revīzija
50ddfbafcd
1 mainītis faili ar 4 papildinājumiem un 0 dzēšanām
  1. 4 0
      drivers/net/ethernet/broadcom/bcmsysport.c

+ 4 - 0
drivers/net/ethernet/broadcom/bcmsysport.c

@@ -449,6 +449,10 @@ static void bcm_sysport_get_stats(struct net_device *dev,
 			p = (char *)&dev->stats;
 			p = (char *)&dev->stats;
 		else
 		else
 			p = (char *)priv;
 			p = (char *)priv;
+
+		if (priv->is_lite && !bcm_sysport_lite_stat_valid(s->type))
+			continue;
+
 		p += s->stat_offset;
 		p += s->stat_offset;
 		data[j] = *(unsigned long *)p;
 		data[j] = *(unsigned long *)p;
 		j++;
 		j++;