ifnet: Simplify ifnet_serialize_array function interface
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Fri, 15 Mar 2013 08:35:40 +0000 (16:35 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Fri, 15 Mar 2013 08:35:40 +0000 (16:35 +0800)
It is no longer used to hold RX or TX serializers, so the RX/TX
serializer offset function arguments are not necessary at all.

sys/dev/netif/bce/if_bce.c
sys/dev/netif/bce/if_bcereg.h
sys/dev/netif/emx/if_emx.c
sys/dev/netif/igb/if_igb.c
sys/dev/netif/igb/if_igb.h
sys/dev/netif/jme/if_jme.c
sys/net/if_var.h

index f8ec4f3..80db5f2 100644 (file)
@@ -6682,16 +6682,15 @@ bce_setup_serialize(struct bce_softc *sc)
         */
 
        i = 0;
+
        KKASSERT(i < sc->serialize_cnt);
        sc->serializes[i++] = &sc->main_serialize;
 
-       sc->rx_serialize = i;
        for (j = 0; j < sc->rx_ring_cnt; ++j) {
                KKASSERT(i < sc->serialize_cnt);
                sc->serializes[i++] = &sc->rx_rings[j].rx_serialize;
        }
 
-       sc->tx_serialize = i;
        for (j = 0; j < sc->tx_ring_cnt; ++j) {
                KKASSERT(i < sc->serialize_cnt);
                sc->serializes[i++] = &sc->tx_rings[j].tx_serialize;
@@ -6705,8 +6704,7 @@ bce_serialize(struct ifnet *ifp, enum ifnet_serialize slz)
 {
        struct bce_softc *sc = ifp->if_softc;
 
-       ifnet_serialize_array_enter(sc->serializes, sc->serialize_cnt,
-           sc->tx_serialize, sc->rx_serialize, slz);
+       ifnet_serialize_array_enter(sc->serializes, sc->serialize_cnt, slz);
 }
 
 static void
@@ -6714,8 +6712,7 @@ bce_deserialize(struct ifnet *ifp, enum ifnet_serialize slz)
 {
        struct bce_softc *sc = ifp->if_softc;
 
-       ifnet_serialize_array_exit(sc->serializes, sc->serialize_cnt,
-           sc->tx_serialize, sc->rx_serialize, slz);
+       ifnet_serialize_array_exit(sc->serializes, sc->serialize_cnt, slz);
 }
 
 static int
@@ -6724,7 +6721,7 @@ bce_tryserialize(struct ifnet *ifp, enum ifnet_serialize slz)
        struct bce_softc *sc = ifp->if_softc;
 
        return ifnet_serialize_array_try(sc->serializes, sc->serialize_cnt,
-           sc->tx_serialize, sc->rx_serialize, slz);
+           slz);
 }
 
 #ifdef INVARIANTS
@@ -6736,7 +6733,7 @@ bce_serialize_assert(struct ifnet *ifp, enum ifnet_serialize slz,
        struct bce_softc *sc = ifp->if_softc;
 
        ifnet_serialize_array_assert(sc->serializes, sc->serialize_cnt,
-           sc->tx_serialize, sc->rx_serialize, slz, serialized);
+           slz, serialized);
 }
 
 #endif /* INVARIANTS */
index 8c96153..fbcc08a 100644 (file)
@@ -6073,8 +6073,6 @@ struct bce_softc {
        bus_addr_t              ctx_paddr[BCE_CTX_PAGES]; /* Physical address */
 
        int                     serialize_cnt;
-       int                     tx_serialize;
-       int                     rx_serialize;
        struct lwkt_serialize   **serializes;
        struct lwkt_serialize   main_serialize;
 
index 881393a..f0556b0 100644 (file)
@@ -120,9 +120,6 @@ do { \
 #define EMX_RSS_DPRINTF(sc, lvl, fmt, ...)     ((void)0)
 #endif /* EMX_RSS_DEBUG */
 
-#define EMX_TX_SERIALIZE       1
-#define EMX_RX_SERIALIZE       3
-
 #define EMX_NAME       "Intel(R) PRO/1000 "
 
 #define EMX_DEVICE(id) \
@@ -456,15 +453,20 @@ emx_attach(device_t dev)
         * Initialize serializer array
         */
        i = 0;
+
+       KKASSERT(i < EMX_NSERIALIZE);
        sc->serializes[i++] = &sc->main_serialize;
 
-       KKASSERT(i == EMX_TX_SERIALIZE);
+       KKASSERT(i < EMX_NSERIALIZE);
        sc->serializes[i++] = &sc->tx_data[0].tx_serialize;
+       KKASSERT(i < EMX_NSERIALIZE);
        sc->serializes[i++] = &sc->tx_data[1].tx_serialize;
 
-       KKASSERT(i == EMX_RX_SERIALIZE);
+       KKASSERT(i < EMX_NSERIALIZE);
        sc->serializes[i++] = &sc->rx_data[0].rx_serialize;
+       KKASSERT(i < EMX_NSERIALIZE);
        sc->serializes[i++] = &sc->rx_data[1].rx_serialize;
+
        KKASSERT(i == EMX_NSERIALIZE);
 
        callout_init_mp(&sc->timer);
@@ -3867,8 +3869,7 @@ emx_serialize(struct ifnet *ifp, enum ifnet_serialize slz)
 {
        struct emx_softc *sc = ifp->if_softc;
 
-       ifnet_serialize_array_enter(sc->serializes, EMX_NSERIALIZE,
-           EMX_TX_SERIALIZE, EMX_RX_SERIALIZE, slz);
+       ifnet_serialize_array_enter(sc->serializes, EMX_NSERIALIZE, slz);
 }
 
 static void
@@ -3876,8 +3877,7 @@ emx_deserialize(struct ifnet *ifp, enum ifnet_serialize slz)
 {
        struct emx_softc *sc = ifp->if_softc;
 
-       ifnet_serialize_array_exit(sc->serializes, EMX_NSERIALIZE,
-           EMX_TX_SERIALIZE, EMX_RX_SERIALIZE, slz);
+       ifnet_serialize_array_exit(sc->serializes, EMX_NSERIALIZE, slz);
 }
 
 static int
@@ -3885,8 +3885,7 @@ emx_tryserialize(struct ifnet *ifp, enum ifnet_serialize slz)
 {
        struct emx_softc *sc = ifp->if_softc;
 
-       return ifnet_serialize_array_try(sc->serializes, EMX_NSERIALIZE,
-           EMX_TX_SERIALIZE, EMX_RX_SERIALIZE, slz);
+       return ifnet_serialize_array_try(sc->serializes, EMX_NSERIALIZE, slz);
 }
 
 static void
@@ -3910,7 +3909,7 @@ emx_serialize_assert(struct ifnet *ifp, enum ifnet_serialize slz,
        struct emx_softc *sc = ifp->if_softc;
 
        ifnet_serialize_array_assert(sc->serializes, EMX_NSERIALIZE,
-           EMX_TX_SERIALIZE, EMX_RX_SERIALIZE, slz, serialized);
+           slz, serialized);
 }
 
 #endif /* INVARIANTS */
index 64820a3..9a854de 100644 (file)
@@ -4050,8 +4050,7 @@ igb_serialize(struct ifnet *ifp, enum ifnet_serialize slz)
 {
        struct igb_softc *sc = ifp->if_softc;
 
-       ifnet_serialize_array_enter(sc->serializes, sc->serialize_cnt,
-           sc->tx_serialize, sc->rx_serialize, slz);
+       ifnet_serialize_array_enter(sc->serializes, sc->serialize_cnt, slz);
 }
 
 static void
@@ -4059,8 +4058,7 @@ igb_deserialize(struct ifnet *ifp, enum ifnet_serialize slz)
 {
        struct igb_softc *sc = ifp->if_softc;
 
-       ifnet_serialize_array_exit(sc->serializes, sc->serialize_cnt,
-           sc->tx_serialize, sc->rx_serialize, slz);
+       ifnet_serialize_array_exit(sc->serializes, sc->serialize_cnt, slz);
 }
 
 static int
@@ -4069,7 +4067,7 @@ igb_tryserialize(struct ifnet *ifp, enum ifnet_serialize slz)
        struct igb_softc *sc = ifp->if_softc;
 
        return ifnet_serialize_array_try(sc->serializes, sc->serialize_cnt,
-           sc->tx_serialize, sc->rx_serialize, slz);
+           slz);
 }
 
 #ifdef INVARIANTS
@@ -4081,7 +4079,7 @@ igb_serialize_assert(struct ifnet *ifp, enum ifnet_serialize slz,
        struct igb_softc *sc = ifp->if_softc;
 
        ifnet_serialize_array_assert(sc->serializes, sc->serialize_cnt,
-           sc->tx_serialize, sc->rx_serialize, slz, serialized);
+           slz, serialized);
 }
 
 #endif /* INVARIANTS */
@@ -4765,6 +4763,7 @@ igb_setup_serializer(struct igb_softc *sc)
         */
 
        i = 0;
+
        KKASSERT(i < sc->serialize_cnt);
        sc->serializes[i++] = &sc->main_serialize;
 
@@ -4776,13 +4775,11 @@ igb_setup_serializer(struct igb_softc *sc)
                }
        }
 
-       sc->tx_serialize = i;
        for (j = 0; j < sc->tx_ring_cnt; ++j) {
                KKASSERT(i < sc->serialize_cnt);
                sc->serializes[i++] = &sc->tx_rings[j].tx_serialize;
        }
 
-       sc->rx_serialize = i;
        for (j = 0; j < sc->rx_ring_cnt; ++j) {
                KKASSERT(i < sc->serialize_cnt);
                sc->serializes[i++] = &sc->rx_rings[j].rx_serialize;
index ad91341..4260705 100644 (file)
@@ -354,8 +354,6 @@ struct igb_softc {
        int                     rx_npoll_off;
        int                     tx_npoll_off;
        int                     serialize_cnt;
-       int                     tx_serialize;
-       int                     rx_serialize;
        struct lwkt_serialize   **serializes;
        struct lwkt_serialize   main_serialize;
 
index e6c22bf..abc4679 100644 (file)
@@ -74,9 +74,6 @@
 
 #define JME_TICK_CPUID         0       /* DO NOT CHANGE THIS */
 
-#define JME_TX_SERIALIZE       1
-#define JME_RX_SERIALIZE       2
-
 #define        JME_CSUM_FEATURES       (CSUM_IP | CSUM_TCP | CSUM_UDP)
 
 #ifdef JME_RSS_DEBUG
@@ -722,17 +719,20 @@ jme_attach(device_t dev)
         * Initialize serializer array
         */
        i = 0;
+
+       KKASSERT(i < JME_NSERIALIZE);
        sc->jme_serialize_arr[i++] = &sc->jme_serialize;
 
-       KKASSERT(i == JME_TX_SERIALIZE);
+       KKASSERT(i < JME_NSERIALIZE);
        sc->jme_serialize_arr[i++] =
            &sc->jme_cdata.jme_tx_data.jme_tx_serialize;
 
-       KKASSERT(i == JME_RX_SERIALIZE);
        for (j = 0; j < sc->jme_cdata.jme_rx_ring_cnt; ++j) {
+               KKASSERT(i < JME_NSERIALIZE);
                sc->jme_serialize_arr[i++] =
                    &sc->jme_cdata.jme_rx_data[j].jme_rx_serialize;
        }
+
        KKASSERT(i <= JME_NSERIALIZE);
        sc->jme_serialize_cnt = i;
 
@@ -3634,7 +3634,7 @@ jme_serialize(struct ifnet *ifp, enum ifnet_serialize slz)
        struct jme_softc *sc = ifp->if_softc;
 
        ifnet_serialize_array_enter(sc->jme_serialize_arr,
-           sc->jme_serialize_cnt, JME_TX_SERIALIZE, JME_RX_SERIALIZE, slz);
+           sc->jme_serialize_cnt, slz);
 }
 
 static void
@@ -3643,7 +3643,7 @@ jme_deserialize(struct ifnet *ifp, enum ifnet_serialize slz)
        struct jme_softc *sc = ifp->if_softc;
 
        ifnet_serialize_array_exit(sc->jme_serialize_arr,
-           sc->jme_serialize_cnt, JME_TX_SERIALIZE, JME_RX_SERIALIZE, slz);
+           sc->jme_serialize_cnt, slz);
 }
 
 static int
@@ -3652,7 +3652,7 @@ jme_tryserialize(struct ifnet *ifp, enum ifnet_serialize slz)
        struct jme_softc *sc = ifp->if_softc;
 
        return ifnet_serialize_array_try(sc->jme_serialize_arr,
-           sc->jme_serialize_cnt, JME_TX_SERIALIZE, JME_RX_SERIALIZE, slz);
+           sc->jme_serialize_cnt, slz);
 }
 
 #ifdef INVARIANTS
@@ -3664,8 +3664,7 @@ jme_serialize_assert(struct ifnet *ifp, enum ifnet_serialize slz,
        struct jme_softc *sc = ifp->if_softc;
 
        ifnet_serialize_array_assert(sc->jme_serialize_arr,
-           sc->jme_serialize_cnt, JME_TX_SERIALIZE, JME_RX_SERIALIZE,
-           slz, serialized);
+           sc->jme_serialize_cnt, slz, serialized);
 }
 
 #endif /* INVARIANTS */
index c604a80..db96551 100644 (file)
@@ -668,7 +668,7 @@ ifa_forwardmsg(struct lwkt_msg *_lmsg, int _nextcpu)
 
 static __inline void
 ifnet_serialize_array_enter(lwkt_serialize_t *_arr, int _arrcnt,
-    int _txoff, int _rxoff, enum ifnet_serialize _slz)
+    enum ifnet_serialize _slz)
 {
        KKASSERT(_slz == IFNET_SERIALIZE_ALL);
        lwkt_serialize_array_enter(_arr, _arrcnt, 0);
@@ -676,7 +676,7 @@ ifnet_serialize_array_enter(lwkt_serialize_t *_arr, int _arrcnt,
 
 static __inline void
 ifnet_serialize_array_exit(lwkt_serialize_t *_arr, int _arrcnt,
-    int _txoff, int _rxoff, enum ifnet_serialize _slz)
+    enum ifnet_serialize _slz)
 {
        KKASSERT(_slz == IFNET_SERIALIZE_ALL);
        lwkt_serialize_array_exit(_arr, _arrcnt, 0);
@@ -684,7 +684,7 @@ ifnet_serialize_array_exit(lwkt_serialize_t *_arr, int _arrcnt,
 
 static __inline int
 ifnet_serialize_array_try(lwkt_serialize_t *_arr, int _arrcnt,
-    int _txoff, int _rxoff, enum ifnet_serialize _slz)
+    enum ifnet_serialize _slz)
 {
        KKASSERT(_slz == IFNET_SERIALIZE_ALL);
        return lwkt_serialize_array_try(_arr, _arrcnt, 0);
@@ -694,7 +694,7 @@ ifnet_serialize_array_try(lwkt_serialize_t *_arr, int _arrcnt,
 
 static __inline void
 ifnet_serialize_array_assert(lwkt_serialize_t *_arr, int _arrcnt,
-    int _txoff, int _rxoff, enum ifnet_serialize _slz, boolean_t _serialized)
+    enum ifnet_serialize _slz, boolean_t _serialized)
 {
        int _i;