Module Name:    src
Committed By:   thorpej
Date:           Wed Jan 29 15:00:39 UTC 2020

Modified Files:
        src/sys/dev/ic: malo.c mb86950.c mb86960.c mtd803.c

Log Message:
Adopt <net/if_stats.h>.


To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 src/sys/dev/ic/malo.c
cvs rdiff -u -r1.32 -r1.33 src/sys/dev/ic/mb86950.c
cvs rdiff -u -r1.93 -r1.94 src/sys/dev/ic/mb86960.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/ic/mtd803.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/ic/malo.c
diff -u src/sys/dev/ic/malo.c:1.17 src/sys/dev/ic/malo.c:1.18
--- src/sys/dev/ic/malo.c:1.17	Sun Nov 10 21:16:35 2019
+++ src/sys/dev/ic/malo.c	Wed Jan 29 15:00:39 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: malo.c,v 1.17 2019/11/10 21:16:35 chs Exp $ */
+/*	$NetBSD: malo.c,v 1.18 2020/01/29 15:00:39 thorpej Exp $ */
 /*	$OpenBSD: malo.c,v 1.92 2010/08/27 17:08:00 jsg Exp $ */
 
 /*
@@ -19,7 +19,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: malo.c,v 1.17 2019/11/10 21:16:35 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: malo.c,v 1.18 2020/01/29 15:00:39 thorpej Exp $");
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -1043,14 +1043,14 @@ malo_start(struct ifnet *ifp)
 
 			if (m0->m_len < sizeof (*eh) &&
 			    (m0 = m_pullup(m0, sizeof (*eh))) == NULL) {
-				ifp->if_oerrors++;
+				if_statinc(ifp, if_oerrors);
 				continue;
 			}
 			eh = mtod(m0, struct ether_header *);
 			ni = ieee80211_find_txnode(ic, eh->ether_dhost);
 			if (ni == NULL) {
 				m_freem(m0);
-				ifp->if_oerrors++;
+				if_statinc(ifp, if_oerrors);
 				continue;
 			}
 
@@ -1066,7 +1066,7 @@ malo_start(struct ifnet *ifp)
 
 			if (malo_tx_data(sc, m0, ni) != 0) {
 				ieee80211_free_node(ni);
-				ifp->if_oerrors++;
+				if_statinc(ifp, if_oerrors);
 				break;
 			}
 		}
@@ -1352,12 +1352,12 @@ malo_tx_intr(struct malo_softc *sc)
 		case MALO_TXD_STATUS_OK:
 			DPRINTF(2, "%s: data frame was sent successfully\n",
 			    device_xname(sc->sc_dev));
-			ifp->if_opackets++;
+			if_statinc(ifp, if_opackets);
 			break;
 		default:
 			DPRINTF(1, "%s: data frame sending error\n",
 			    device_xname(sc->sc_dev));
-			ifp->if_oerrors++;
+			if_statinc(ifp, if_oerrors);
 			break;
 		}
 
@@ -1415,7 +1415,7 @@ malo_tx_data(struct malo_softc *sc, stru
 	if (m0->m_len < sizeof(struct ieee80211_frame)) {
 		m0 = m_pullup(m0, sizeof(struct ieee80211_frame));
 		if (m0 == NULL) {
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			return (ENOBUFS);
 		}
 	}
@@ -1555,14 +1555,14 @@ malo_rx_intr(struct malo_softc *sc)
 
 		MGETHDR(mnew, M_DONTWAIT, MT_DATA);
 		if (mnew == NULL) {
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			goto skip;
 		}
 
 		MCLGET(mnew, M_DONTWAIT);
 		if (!(mnew->m_flags & M_EXT)) {
 			m_freem(mnew);
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			goto skip;
 		}
 
@@ -1582,7 +1582,7 @@ malo_rx_intr(struct malo_softc *sc)
 				panic("%s: could not load old rx mbuf",
 				    device_xname(sc->sc_dev));
 			}
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			goto skip;
 		}
 

Index: src/sys/dev/ic/mb86950.c
diff -u src/sys/dev/ic/mb86950.c:1.32 src/sys/dev/ic/mb86950.c:1.33
--- src/sys/dev/ic/mb86950.c:1.32	Wed May 29 10:07:29 2019
+++ src/sys/dev/ic/mb86950.c	Wed Jan 29 15:00:39 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: mb86950.c,v 1.32 2019/05/29 10:07:29 msaitoh Exp $	*/
+/*	$NetBSD: mb86950.c,v 1.33 2020/01/29 15:00:39 thorpej Exp $	*/
 
 /*
  * All Rights Reserved, Copyright (C) Fujitsu Limited 1995
@@ -67,7 +67,7 @@
   */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mb86950.c,v 1.32 2019/05/29 10:07:29 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mb86950.c,v 1.33 2020/01/29 15:00:39 thorpej Exp $");
 
 /*
  * Device driver for Fujitsu mb86950 based Ethernet cards.
@@ -415,7 +415,7 @@ mb86950_watchdog(struct ifnet *ifp)
 	 * Don't know how many packets are lost by this accident.
 	 *  ... So just errors = errors + 1
 	 */
-	ifp->if_oerrors++;
+	if_statinc(ifp, if_oerrors);
 
 	mb86950_reset(sc);
 }
@@ -735,12 +735,12 @@ mb86950_tint(struct mb86950_softc *sc, u
 
 	if (tstat & (TX_UNDERFLO | TX_BUS_WR_ERR)) {
 		/* XXX What do we need to do here? reset ? */
-		ifp->if_oerrors++;
+		if_statinc(ifp, if_oerrors);
 	}
 
 	/* Excessive collision */
 	if (tstat & TX_16COL) {
-		ifp->if_collisions += 16;
+		if_statadd(ifp, if_collisions, 16);
 		/* 16 collisions means that the packet has been thrown away. */
 		if (sc->txb_sched > 0)
 			sc->txb_sched--;
@@ -749,7 +749,7 @@ mb86950_tint(struct mb86950_softc *sc, u
 	/* Transmission complete. */
 	if (tstat & TX_DONE) {
 		/* Successfully transmitted packets ++. */
-		ifp->if_opackets++;
+		if_statinc(ifp, if_opackets);
 		if (sc->txb_sched > 0)
 			sc->txb_sched--;
 
@@ -757,7 +757,7 @@ mb86950_tint(struct mb86950_softc *sc, u
 		if (tstat & TX_COL) {
 			col = (bus_space_read_1(bst, bsh, DLCR_TX_MODE)
 			    & COL_MASK) >> 4;
-			ifp->if_collisions = ifp->if_collisions + col;
+			if_statadd(ifp, if_collisions, col);
 		}
 	}
 
@@ -786,7 +786,7 @@ mb86950_rint(struct mb86950_softc *sc, u
 		 * count everything else
 		 */
 		if ((rstat & RX_BUS_RD_ERR) == 0) {
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 		}
 	}
 
@@ -810,7 +810,7 @@ mb86950_rint(struct mb86950_softc *sc, u
 
 		/* Bad packet? */
 		if ((status & GOOD_PKT) == 0) {
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			mb86950_drain_fifo(sc);
 			continue;
 		}
@@ -820,14 +820,14 @@ mb86950_rint(struct mb86950_softc *sc, u
 
 		if (len > (ETHER_MAX_LEN - ETHER_CRC_LEN)
 		    || len < ETHER_HDR_LEN) {
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			mb86950_drain_fifo(sc);
 			continue;
 		}
 
 		if (mb86950_get_fifo(sc, len) != 0) {
 			/* No mbufs? Drop packet. */
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			mb86950_drain_fifo(sc);
 			return;
 		}

Index: src/sys/dev/ic/mb86960.c
diff -u src/sys/dev/ic/mb86960.c:1.93 src/sys/dev/ic/mb86960.c:1.94
--- src/sys/dev/ic/mb86960.c:1.93	Wed May 29 10:07:29 2019
+++ src/sys/dev/ic/mb86960.c	Wed Jan 29 15:00:39 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: mb86960.c,v 1.93 2019/05/29 10:07:29 msaitoh Exp $	*/
+/*	$NetBSD: mb86960.c,v 1.94 2020/01/29 15:00:39 thorpej Exp $	*/
 
 /*
  * All Rights Reserved, Copyright (C) Fujitsu Limited 1995
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mb86960.c,v 1.93 2019/05/29 10:07:29 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mb86960.c,v 1.94 2020/01/29 15:00:39 thorpej Exp $");
 
 /*
  * Device driver for Fujitsu MB86960A/MB86965A based Ethernet cards.
@@ -427,7 +427,7 @@ mb86960_watchdog(struct ifnet *ifp)
 #endif
 
 	/* Record how many packets are lost by this accident. */
-	sc->sc_ec.ec_if.if_oerrors += sc->txb_sched + sc->txb_count;
+	if_statadd(ifp, if_oerrors, sc->txb_sched + sc->txb_count);
 
 	mb86960_reset(sc);
 }
@@ -818,9 +818,11 @@ mb86960_tint(struct mb86960_softc *sc, u
 		/*
 		 * Update statistics.
 		 */
-		ifp->if_collisions += 16;
-		ifp->if_oerrors++;
-		ifp->if_opackets += sc->txb_sched - left;
+		net_stat_ref_t nsr = IF_STAT_GETREF(ifp);
+		if_statadd_ref(nsr, if_collisions, 16);
+		if_statinc_ref(nsr, if_oerrors);
+		if_statadd_ref(nsr, if_opackets, sc->txb_sched - left);
+		IF_STAT_PUTREF(ifp);
 
 		/*
 		 * Collision statistics has been updated.
@@ -889,7 +891,7 @@ mb86960_tint(struct mb86960_softc *sc, u
 				col = 1;
 			} else
 				col >>= FE_D4_COL_SHIFT;
-			ifp->if_collisions += col;
+			if_statadd(ifp, if_collisions, col);
 #if FE_DEBUG >= 4
 			log(LOG_WARNING, "%s: %d collision%s (%d)\n",
 			    device_xname(sc->sc_dev), col, col == 1 ? "" : "s",
@@ -901,7 +903,7 @@ mb86960_tint(struct mb86960_softc *sc, u
 		 * Update total number of successfully
 		 * transmitted packets.
 		 */
-		ifp->if_opackets += sc->txb_sched;
+		if_statadd(ifp, if_opackets, sc->txb_sched);
 		sc->txb_sched = 0;
 	}
 
@@ -948,7 +950,7 @@ mb86960_rint(struct mb86960_softc *sc, u
 		log(LOG_WARNING, "%s: receive error: %s\n",
 		    device_xname(sc->sc_dev), sbuf);
 #endif
-		ifp->if_ierrors++;
+		if_statinc(ifp, if_ierrors);
 	}
 
 	/*
@@ -988,7 +990,7 @@ mb86960_rint(struct mb86960_softc *sc, u
 		 */
 		if ((status & FE_RXSTAT_GOODPKT) == 0) {
 			if ((ifp->if_flags & IFF_PROMISC) == 0) {
-				ifp->if_ierrors++;
+				if_statinc(ifp, if_ierrors);
 				mb86960_droppacket(sc);
 				continue;
 			}
@@ -1022,7 +1024,7 @@ mb86960_rint(struct mb86960_softc *sc, u
 			    device_xname(sc->sc_dev),
 			    len < ETHER_HDR_LEN ? "partial" : "big", len);
 #endif
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			mb86960_droppacket(sc);
 			continue;
 		}
@@ -1051,7 +1053,7 @@ mb86960_rint(struct mb86960_softc *sc, u
 			    "%s: out of mbufs; dropping packet (%u bytes)\n",
 			    device_xname(sc->sc_dev), len);
 #endif
-			ifp->if_ierrors++;
+			if_statinc(ifp, if_ierrors);
 			mb86960_droppacket(sc);
 
 			/*
@@ -1391,7 +1393,7 @@ mb86960_write_mbufs(struct mb86960_softc
 		log(LOG_ERR, "%s: got a %s packet (%u bytes) to send\n",
 		    device_xname(sc->sc_dev),
 		    totlen < ETHER_HDR_LEN ? "partial" : "big", totlen);
-		sc->sc_ec.ec_if.if_oerrors++;
+		if_statinc(&sc->sc_ec.ec_if, if_oerrors);
 		return;
 	}
 #endif

Index: src/sys/dev/ic/mtd803.c
diff -u src/sys/dev/ic/mtd803.c:1.40 src/sys/dev/ic/mtd803.c:1.41
--- src/sys/dev/ic/mtd803.c:1.40	Thu May 30 02:32:18 2019
+++ src/sys/dev/ic/mtd803.c	Wed Jan 29 15:00:39 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: mtd803.c,v 1.40 2019/05/30 02:32:18 msaitoh Exp $ */
+/* $NetBSD: mtd803.c,v 1.41 2020/01/29 15:00:39 thorpej Exp $ */
 
 /*-
  *
@@ -44,7 +44,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mtd803.c,v 1.40 2019/05/30 02:32:18 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mtd803.c,v 1.41 2020/01/29 15:00:39 thorpej Exp $");
 
 
 #include <sys/param.h>
@@ -539,7 +539,7 @@ mtd_watchdog(struct ifnet *ifp)
 	int s;
 
 	log(LOG_ERR, "%s: device timeout\n", device_xname(sc->dev));
-	++sc->ethercom.ec_if.if_oerrors;
+	if_statinc(ifp, if_oerrors);
 
 	mtd_stop(ifp, 0);
 
@@ -645,7 +645,7 @@ mtd_rxirq(struct mtd_softc *sc)
 			sc->desc[sc->cur_rx].stat = MTD_RXD_OWNER;
 			sc->desc[sc->cur_rx].conf = MTD_RXBUF_SIZE &
 							MTD_RXD_CONF_BUFS;
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 			if (++sc->cur_rx >= MTD_NUM_RXD)
 				sc->cur_rx = 0;
 			continue;
@@ -662,7 +662,7 @@ mtd_rxirq(struct mtd_softc *sc)
 			sc->desc[sc->cur_rx].stat = MTD_RXD_OWNER;
 			sc->desc[sc->cur_rx].conf = MTD_RXBUF_SIZE &
 							MTD_RXD_CONF_BUFS;
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 			if (++sc->cur_rx >= MTD_NUM_RXD)
 				sc->cur_rx = 0;
 			continue;
@@ -680,7 +680,7 @@ mtd_rxirq(struct mtd_softc *sc)
 		if (m == NULL) {
 			aprint_error_dev(sc->dev,
 			    "error pulling packet off interface\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 			continue;
 		}
 
@@ -701,7 +701,7 @@ mtd_txirq(struct mtd_softc *sc)
 	ifp->if_timer = 0;
 
 	ifp->if_flags &= ~IFF_OACTIVE;
-	++ifp->if_opackets;
+	if_statinc(ifp, if_opackets);
 
 	/* XXX FIXME If there is some queued, do an mtd_start? */
 
@@ -755,44 +755,44 @@ mtd_irq_h(void *args)
 		if (status & MTD_ISR_RXBUN) {
 			aprint_error_dev(sc->dev,
 			    "receive buffer unavailable\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 		}
 
 		if (status & MTD_ISR_RXERR) {
 			aprint_error_dev(sc->dev, "receive error\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 		}
 
 		if (status & MTD_ISR_TXBUN) {
 			aprint_error_dev(sc->dev,
 			    "transmit buffer unavailable\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 		}
 
 		if ((status & MTD_ISR_PDF)) {
 			aprint_error_dev(sc->dev,
 			    "parallel detection fault\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 		}
 
 		if (status & MTD_ISR_FBUSERR) {
 			aprint_error_dev(sc->dev, "fatal bus error\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 		}
 
 		if (status & MTD_ISR_TARERR) {
 			aprint_error_dev(sc->dev, "target error\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 		}
 
 		if (status & MTD_ISR_MASTERR) {
 			aprint_error_dev(sc->dev, "master error\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 		}
 
 		if (status & MTD_ISR_PARERR) {
 			aprint_error_dev(sc->dev, "parity error\n");
-			++ifp->if_ierrors;
+			if_statinc(ifp, if_ierrors);
 		}
 
 		if (status & MTD_ISR_RXIRQ)	/* Receive interrupt */

Reply via email to