Author: mmacy
Date: Tue Jun 12 22:18:20 2018
New Revision: 335016
URL: https://svnweb.freebsd.org/changeset/base/335016

Log:
  mechanical CK macro conversion of inpcbinfo lists
  
  This is a dependency for converting the inpcbinfo hash and info rlocks
  to epoch.

Modified:
  head/sys/netinet/in_pcb.c
  head/sys/netinet/in_pcb.h
  head/sys/netinet/ip_divert.c
  head/sys/netinet/raw_ip.c
  head/sys/netinet/tcp_subr.c
  head/sys/netinet/udp_usrreq.c
  head/sys/netinet6/icmp6.c
  head/sys/netinet6/in6_pcb.c
  head/sys/netinet6/raw_ip6.c
  head/sys/netinet6/udp6_usrreq.c

Modified: head/sys/netinet/in_pcb.c
==============================================================================
--- head/sys/netinet/in_pcb.c   Tue Jun 12 22:18:15 2018        (r335015)
+++ head/sys/netinet/in_pcb.c   Tue Jun 12 22:18:20 2018        (r335016)
@@ -456,7 +456,7 @@ in_pcbinfo_init(struct inpcbinfo *pcbinfo, const char 
        pcbinfo->ipi_vnet = curvnet;
 #endif
        pcbinfo->ipi_listhead = listhead;
-       LIST_INIT(pcbinfo->ipi_listhead);
+       CK_LIST_INIT(pcbinfo->ipi_listhead);
        pcbinfo->ipi_count = 0;
        pcbinfo->ipi_hashbase = hashinit(hash_nelements, M_PCB,
            &pcbinfo->ipi_hashmask);
@@ -549,7 +549,7 @@ in_pcballoc(struct socket *so, struct inpcbinfo *pcbin
 #endif
        INP_WLOCK(inp);
        INP_LIST_WLOCK(pcbinfo);
-       LIST_INSERT_HEAD(pcbinfo->ipi_listhead, inp, inp_list);
+       CK_LIST_INSERT_HEAD(pcbinfo->ipi_listhead, inp, inp_list);
        pcbinfo->ipi_count++;
        so->so_pcb = (caddr_t)inp;
 #ifdef INET6
@@ -1678,10 +1678,10 @@ in_pcbdrop(struct inpcb *inp)
 
                INP_HASH_WLOCK(inp->inp_pcbinfo);
                in_pcbremlbgrouphash(inp);
-               LIST_REMOVE(inp, inp_hash);
-               LIST_REMOVE(inp, inp_portlist);
-               if (LIST_FIRST(&phd->phd_pcblist) == NULL) {
-                       LIST_REMOVE(phd, phd_hash);
+               CK_LIST_REMOVE(inp, inp_hash);
+               CK_LIST_REMOVE(inp, inp_portlist);
+               if (CK_LIST_FIRST(&phd->phd_pcblist) == NULL) {
+                       CK_LIST_REMOVE(phd, phd_hash);
                        free(phd, M_PCB);
                }
                INP_HASH_WUNLOCK(inp->inp_pcbinfo);
@@ -1756,7 +1756,7 @@ in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_a
        struct inpcb *inp, *inp_temp;
 
        INP_INFO_WLOCK(pcbinfo);
-       LIST_FOREACH_SAFE(inp, pcbinfo->ipi_listhead, inp_list, inp_temp) {
+       CK_LIST_FOREACH_SAFE(inp, pcbinfo->ipi_listhead, inp_list, inp_temp) {
                INP_WLOCK(inp);
 #ifdef INET6
                if ((inp->inp_vflag & INP_IPV4) == 0) {
@@ -1783,7 +1783,7 @@ in_pcbpurgeif0(struct inpcbinfo *pcbinfo, struct ifnet
        int i, gap;
 
        INP_INFO_WLOCK(pcbinfo);
-       LIST_FOREACH(inp, pcbinfo->ipi_listhead, inp_list) {
+       CK_LIST_FOREACH(inp, pcbinfo->ipi_listhead, inp_list) {
                INP_WLOCK(inp);
                imo = inp->inp_moptions;
                if ((inp->inp_vflag & INP_IPV4) &&
@@ -1848,7 +1848,7 @@ in_pcblookup_local(struct inpcbinfo *pcbinfo, struct i
                 */
                head = &pcbinfo->ipi_hashbase[INP_PCBHASH(INADDR_ANY, lport,
                    0, pcbinfo->ipi_hashmask)];
-               LIST_FOREACH(inp, head, inp_hash) {
+               CK_LIST_FOREACH(inp, head, inp_hash) {
 #ifdef INET6
                        /* XXX inp locking */
                        if ((inp->inp_vflag & INP_IPV4) == 0)
@@ -1882,7 +1882,7 @@ in_pcblookup_local(struct inpcbinfo *pcbinfo, struct i
                 */
                porthash = &pcbinfo->ipi_porthashbase[INP_PCBPORTHASH(lport,
                    pcbinfo->ipi_porthashmask)];
-               LIST_FOREACH(phd, porthash, phd_hash) {
+               CK_LIST_FOREACH(phd, porthash, phd_hash) {
                        if (phd->phd_port == lport)
                                break;
                }
@@ -1891,7 +1891,7 @@ in_pcblookup_local(struct inpcbinfo *pcbinfo, struct i
                         * Port is in use by one or more PCBs. Look for best
                         * fit.
                         */
-                       LIST_FOREACH(inp, &phd->phd_pcblist, inp_portlist) {
+                       CK_LIST_FOREACH(inp, &phd->phd_pcblist, inp_portlist) {
                                wildcard = 0;
                                if (cred != NULL &&
                                    !prison_equal_ip4(inp->inp_cred->cr_prison,
@@ -2250,7 +2250,7 @@ in_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, st
        tmpinp = NULL;
        head = &pcbinfo->ipi_hashbase[INP_PCBHASH(faddr.s_addr, lport, fport,
            pcbinfo->ipi_hashmask)];
-       LIST_FOREACH(inp, head, inp_hash) {
+       CK_LIST_FOREACH(inp, head, inp_hash) {
 #ifdef INET6
                /* XXX inp locking */
                if ((inp->inp_vflag & INP_IPV4) == 0)
@@ -2307,7 +2307,7 @@ in_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, st
 
                head = &pcbinfo->ipi_hashbase[INP_PCBHASH(INADDR_ANY, lport,
                    0, pcbinfo->ipi_hashmask)];
-               LIST_FOREACH(inp, head, inp_hash) {
+               CK_LIST_FOREACH(inp, head, inp_hash) {
 #ifdef INET6
                        /* XXX inp locking */
                        if ((inp->inp_vflag & INP_IPV4) == 0)
@@ -2540,7 +2540,7 @@ in_pcbinshash_internal(struct inpcb *inp, int do_pcbgr
        /*
         * Go through port list and look for a head for this lport.
         */
-       LIST_FOREACH(phd, pcbporthash, phd_hash) {
+       CK_LIST_FOREACH(phd, pcbporthash, phd_hash) {
                if (phd->phd_port == inp->inp_lport)
                        break;
        }
@@ -2553,12 +2553,12 @@ in_pcbinshash_internal(struct inpcb *inp, int do_pcbgr
                        return (ENOBUFS); /* XXX */
                }
                phd->phd_port = inp->inp_lport;
-               LIST_INIT(&phd->phd_pcblist);
-               LIST_INSERT_HEAD(pcbporthash, phd, phd_hash);
+               CK_LIST_INIT(&phd->phd_pcblist);
+               CK_LIST_INSERT_HEAD(pcbporthash, phd, phd_hash);
        }
        inp->inp_phd = phd;
-       LIST_INSERT_HEAD(&phd->phd_pcblist, inp, inp_portlist);
-       LIST_INSERT_HEAD(pcbhash, inp, inp_hash);
+       CK_LIST_INSERT_HEAD(&phd->phd_pcblist, inp, inp_portlist);
+       CK_LIST_INSERT_HEAD(pcbhash, inp, inp_hash);
        inp->inp_flags |= INP_INHASHLIST;
 #ifdef PCBGROUP
        if (do_pcbgroup_update)
@@ -2621,8 +2621,8 @@ in_pcbrehash_mbuf(struct inpcb *inp, struct mbuf *m)
        head = &pcbinfo->ipi_hashbase[INP_PCBHASH(hashkey_faddr,
                inp->inp_lport, inp->inp_fport, pcbinfo->ipi_hashmask)];
 
-       LIST_REMOVE(inp, inp_hash);
-       LIST_INSERT_HEAD(head, inp, inp_hash);
+       CK_LIST_REMOVE(inp, inp_hash);
+       CK_LIST_INSERT_HEAD(head, inp, inp_hash);
 
 #ifdef PCBGROUP
        if (m != NULL)
@@ -2667,16 +2667,16 @@ in_pcbremlists(struct inpcb *inp)
                /* XXX: Only do if SO_REUSEPORT_LB set? */
                in_pcbremlbgrouphash(inp);
 
-               LIST_REMOVE(inp, inp_hash);
-               LIST_REMOVE(inp, inp_portlist);
-               if (LIST_FIRST(&phd->phd_pcblist) == NULL) {
-                       LIST_REMOVE(phd, phd_hash);
+               CK_LIST_REMOVE(inp, inp_hash);
+               CK_LIST_REMOVE(inp, inp_portlist);
+               if (CK_LIST_FIRST(&phd->phd_pcblist) == NULL) {
+                       CK_LIST_REMOVE(phd, phd_hash);
                        free(phd, M_PCB);
                }
                INP_HASH_WUNLOCK(pcbinfo);
                inp->inp_flags &= ~INP_INHASHLIST;
        }
-       LIST_REMOVE(inp, inp_list);
+       CK_LIST_REMOVE(inp, inp_list);
        pcbinfo->ipi_count--;
 #ifdef PCBGROUP
        in_pcbgroup_remove(inp);
@@ -2820,7 +2820,7 @@ inp_apply_all(void (*func)(struct inpcb *, void *), vo
        struct inpcb *inp;
 
        INP_INFO_WLOCK(&V_tcbinfo);
-       LIST_FOREACH(inp, V_tcbinfo.ipi_listhead, inp_list) {
+       CK_LIST_FOREACH(inp, V_tcbinfo.ipi_listhead, inp_list) {
                INP_WLOCK(inp);
                func(inp, arg);
                INP_WUNLOCK(inp);

Modified: head/sys/netinet/in_pcb.h
==============================================================================
--- head/sys/netinet/in_pcb.h   Tue Jun 12 22:18:15 2018        (r335015)
+++ head/sys/netinet/in_pcb.h   Tue Jun 12 22:18:20 2018        (r335016)
@@ -53,6 +53,7 @@
 #include <net/vnet.h>
 #include <vm/uma.h>
 #endif
+#include <sys/ck.h>
 
 #define        in6pcb          inpcb   /* for KAME src sync over BSD*'s */
 #define        in6p_sp         inp_sp  /* for KAME src sync over BSD*'s */
@@ -65,8 +66,8 @@
  * numbers, and pointers up (to a socket structure) and down (to a
  * protocol-specific control block) are stored here.
  */
-LIST_HEAD(inpcbhead, inpcb);
-LIST_HEAD(inpcbporthead, inpcbport);
+CK_LIST_HEAD(inpcbhead, inpcb);
+CK_LIST_HEAD(inpcbporthead, inpcbport);
 typedef        uint64_t        inp_gen_t;
 
 /*
@@ -230,8 +231,8 @@ struct inpcbpolicy;
 struct m_snd_tag;
 struct inpcb {
        /* Cache line #1 (amd64) */
-       LIST_ENTRY(inpcb) inp_hash;     /* (h/i) hash list */
-       LIST_ENTRY(inpcb) inp_pcbgrouphash;     /* (g/i) hash list */
+       CK_LIST_ENTRY(inpcb) inp_hash;  /* (h/i) hash list */
+       CK_LIST_ENTRY(inpcb) inp_pcbgrouphash;  /* (g/i) hash list */
        struct rwlock   inp_lock;
        /* Cache line #2 (amd64) */
 #define        inp_start_zero  inp_hpts
@@ -313,7 +314,7 @@ struct inpcb {
                int     in6p_cksum;
                short   in6p_hops;
        };
-       LIST_ENTRY(inpcb) inp_portlist; /* (i/h) */
+       CK_LIST_ENTRY(inpcb) inp_portlist;      /* (i/h) */
        struct  inpcbport *inp_phd;     /* (i/h) head of this list */
        inp_gen_t       inp_gencnt;     /* (c) generation count */
        struct llentry  *inp_lle;       /* cached L2 information */
@@ -322,7 +323,7 @@ struct inpcb {
                struct route inp_route;
                struct route_in6 inp_route6;
        };
-       LIST_ENTRY(inpcb) inp_list;     /* (p/l) list for all PCBs for proto */
+       CK_LIST_ENTRY(inpcb) inp_list;  /* (p/l) list for all PCBs for proto */
                                        /* (p[w]) for list iteration */
                                        /* (p[r]/l) for addition/removal */
        struct epoch_context inp_epoch_ctx;
@@ -401,7 +402,7 @@ void        in_pcbtoxinpcb(const struct inpcb *, struct 
xinpc
 #endif /* _SYS_SOCKETVAR_H_ */
 
 struct inpcbport {
-       LIST_ENTRY(inpcbport) phd_hash;
+       CK_LIST_ENTRY(inpcbport) phd_hash;
        struct inpcbhead phd_pcblist;
        u_short phd_port;
 };

Modified: head/sys/netinet/ip_divert.c
==============================================================================
--- head/sys/netinet/ip_divert.c        Tue Jun 12 22:18:15 2018        
(r335015)
+++ head/sys/netinet/ip_divert.c        Tue Jun 12 22:18:20 2018        
(r335016)
@@ -273,7 +273,7 @@ divert_packet(struct mbuf *m, int incoming)
        sa = NULL;
        nport = htons((u_int16_t)(((struct ipfw_rule_ref *)(mtag+1))->info));
        INP_INFO_RLOCK(&V_divcbinfo);
-       LIST_FOREACH(inp, &V_divcb, inp_list) {
+       CK_LIST_FOREACH(inp, &V_divcb, inp_list) {
                /* XXX why does only one socket match? */
                if (inp->inp_lport == nport) {
                        INP_RLOCK(inp);
@@ -676,8 +676,8 @@ div_pcblist(SYSCTL_HANDLER_ARGS)
        inp_list = il->il_inp_list;
        
        INP_INFO_RLOCK(&V_divcbinfo);
-       for (inp = LIST_FIRST(V_divcbinfo.ipi_listhead), i = 0; inp && i < n;
-            inp = LIST_NEXT(inp, inp_list)) {
+       for (inp = CK_LIST_FIRST(V_divcbinfo.ipi_listhead), i = 0; inp && i < n;
+            inp = CK_LIST_NEXT(inp, inp_list)) {
                INP_WLOCK(inp);
                if (inp->inp_gencnt <= gencnt &&
                    cr_canseeinpcb(req->td->td_ucred, inp) == 0) {

Modified: head/sys/netinet/raw_ip.c
==============================================================================
--- head/sys/netinet/raw_ip.c   Tue Jun 12 22:18:15 2018        (r335015)
+++ head/sys/netinet/raw_ip.c   Tue Jun 12 22:18:20 2018        (r335016)
@@ -170,7 +170,7 @@ rip_inshash(struct inpcb *inp)
        } else
                hash = 0;
        pcbhash = &pcbinfo->ipi_hashbase[hash];
-       LIST_INSERT_HEAD(pcbhash, inp, inp_hash);
+       CK_LIST_INSERT_HEAD(pcbhash, inp, inp_hash);
 }
 
 static void
@@ -180,7 +180,7 @@ rip_delhash(struct inpcb *inp)
        INP_INFO_WLOCK_ASSERT(inp->inp_pcbinfo);
        INP_WLOCK_ASSERT(inp);
 
-       LIST_REMOVE(inp, inp_hash);
+       CK_LIST_REMOVE(inp, inp_hash);
 }
 #endif /* INET */
 
@@ -300,7 +300,7 @@ rip_input(struct mbuf **mp, int *offp, int proto)
        hash = INP_PCBHASH_RAW(proto, ip->ip_src.s_addr,
            ip->ip_dst.s_addr, V_ripcbinfo.ipi_hashmask);
        INP_INFO_RLOCK(&V_ripcbinfo);
-       LIST_FOREACH(inp, &V_ripcbinfo.ipi_hashbase[hash], inp_hash) {
+       CK_LIST_FOREACH(inp, &V_ripcbinfo.ipi_hashbase[hash], inp_hash) {
                if (inp->inp_ip_p != proto)
                        continue;
 #ifdef INET6
@@ -332,7 +332,7 @@ rip_input(struct mbuf **mp, int *offp, int proto)
                INP_RLOCK(inp);
                last = inp;
        }
-       LIST_FOREACH(inp, &V_ripcbinfo.ipi_hashbase[0], inp_hash) {
+       CK_LIST_FOREACH(inp, &V_ripcbinfo.ipi_hashbase[0], inp_hash) {
                if (inp->inp_ip_p && inp->inp_ip_p != proto)
                        continue;
 #ifdef INET6
@@ -1060,8 +1060,8 @@ rip_pcblist(SYSCTL_HANDLER_ARGS)
        inp_list = il->il_inp_list;
 
        INP_INFO_RLOCK(&V_ripcbinfo);
-       for (inp = LIST_FIRST(V_ripcbinfo.ipi_listhead), i = 0; inp && i < n;
-            inp = LIST_NEXT(inp, inp_list)) {
+       for (inp = CK_LIST_FIRST(V_ripcbinfo.ipi_listhead), i = 0; inp && i < n;
+            inp = CK_LIST_NEXT(inp, inp_list)) {
                INP_WLOCK(inp);
                if (inp->inp_gencnt <= gencnt &&
                    cr_canseeinpcb(req->td->td_ucred, inp) == 0) {

Modified: head/sys/netinet/tcp_subr.c
==============================================================================
--- head/sys/netinet/tcp_subr.c Tue Jun 12 22:18:15 2018        (r335015)
+++ head/sys/netinet/tcp_subr.c Tue Jun 12 22:18:20 2018        (r335016)
@@ -947,7 +947,7 @@ deregister_tcp_functions(struct tcp_function_block *bl
                VNET_FOREACH(vnet_iter) {
                        CURVNET_SET(vnet_iter);
                        INP_INFO_WLOCK(&V_tcbinfo);
-                       LIST_FOREACH(inp, V_tcbinfo.ipi_listhead, inp_list) {
+                       CK_LIST_FOREACH(inp, V_tcbinfo.ipi_listhead, inp_list) {
                                INP_WLOCK(inp);
                                if (inp->inp_flags & INP_TIMEWAIT) {
                                        INP_WUNLOCK(inp);
@@ -1717,7 +1717,7 @@ tcp_ccalgounload(struct cc_algo *unload_algo)
                 * therefore don't enter the loop below until the connection
                 * list has stabilised.
                 */
-               LIST_FOREACH(inp, &V_tcb, inp_list) {
+               CK_LIST_FOREACH(inp, &V_tcb, inp_list) {
                        INP_WLOCK(inp);
                        /* Important to skip tcptw structs. */
                        if (!(inp->inp_flags & INP_TIMEWAIT) &&
@@ -2018,7 +2018,7 @@ tcp_drain(void)
         *      useful.
         */
                INP_INFO_WLOCK(&V_tcbinfo);
-               LIST_FOREACH(inpb, V_tcbinfo.ipi_listhead, inp_list) {
+               CK_LIST_FOREACH(inpb, V_tcbinfo.ipi_listhead, inp_list) {
                        if (inpb->inp_flags & INP_TIMEWAIT)
                                continue;
                        INP_WLOCK(inpb);
@@ -2155,8 +2155,8 @@ tcp_pcblist(SYSCTL_HANDLER_ARGS)
        inp_list = il->il_inp_list;
 
        INP_INFO_WLOCK(&V_tcbinfo);
-       for (inp = LIST_FIRST(V_tcbinfo.ipi_listhead), i = 0;
-           inp != NULL && i < n; inp = LIST_NEXT(inp, inp_list)) {
+       for (inp = CK_LIST_FIRST(V_tcbinfo.ipi_listhead), i = 0;
+           inp != NULL && i < n; inp = CK_LIST_NEXT(inp, inp_list)) {
                INP_WLOCK(inp);
                if (inp->inp_gencnt <= gencnt) {
                        /*

Modified: head/sys/netinet/udp_usrreq.c
==============================================================================
--- head/sys/netinet/udp_usrreq.c       Tue Jun 12 22:18:15 2018        
(r335015)
+++ head/sys/netinet/udp_usrreq.c       Tue Jun 12 22:18:20 2018        
(r335016)
@@ -532,7 +532,7 @@ udp_input(struct mbuf **mp, int *offp, int proto)
                INP_INFO_RLOCK(pcbinfo);
                pcblist = udp_get_pcblist(proto);
                last = NULL;
-               LIST_FOREACH(inp, pcblist, inp_list) {
+               CK_LIST_FOREACH(inp, pcblist, inp_list) {
                        if (inp->inp_lport != uh->uh_dport)
                                continue;
 #ifdef INET6
@@ -878,8 +878,8 @@ udp_pcblist(SYSCTL_HANDLER_ARGS)
        inp_list = il->il_inp_list;
 
        INP_INFO_RLOCK(&V_udbinfo);
-       for (inp = LIST_FIRST(V_udbinfo.ipi_listhead), i = 0; inp && i < n;
-            inp = LIST_NEXT(inp, inp_list)) {
+       for (inp = CK_LIST_FIRST(V_udbinfo.ipi_listhead), i = 0; inp && i < n;
+            inp = CK_LIST_NEXT(inp, inp_list)) {
                INP_WLOCK(inp);
                if (inp->inp_gencnt <= gencnt &&
                    cr_canseeinpcb(req->td->td_ucred, inp) == 0) {

Modified: head/sys/netinet6/icmp6.c
==============================================================================
--- head/sys/netinet6/icmp6.c   Tue Jun 12 22:18:15 2018        (r335015)
+++ head/sys/netinet6/icmp6.c   Tue Jun 12 22:18:20 2018        (r335016)
@@ -1923,7 +1923,7 @@ icmp6_rip6_input(struct mbuf **mp, int off)
        }
 
        INP_INFO_RLOCK(&V_ripcbinfo);
-       LIST_FOREACH(in6p, &V_ripcb, inp_list) {
+       CK_LIST_FOREACH(in6p, &V_ripcb, inp_list) {
                if ((in6p->inp_vflag & INP_IPV6) == 0)
                        continue;
                if (in6p->inp_ip_p != IPPROTO_ICMPV6)

Modified: head/sys/netinet6/in6_pcb.c
==============================================================================
--- head/sys/netinet6/in6_pcb.c Tue Jun 12 22:18:15 2018        (r335015)
+++ head/sys/netinet6/in6_pcb.c Tue Jun 12 22:18:20 2018        (r335016)
@@ -649,7 +649,7 @@ in6_pcbnotify(struct inpcbinfo *pcbinfo, struct sockad
        }
        errno = inet6ctlerrmap[cmd];
        INP_INFO_WLOCK(pcbinfo);
-       LIST_FOREACH_SAFE(inp, pcbinfo->ipi_listhead, inp_list, inp_temp) {
+       CK_LIST_FOREACH_SAFE(inp, pcbinfo->ipi_listhead, inp_list, inp_temp) {
                INP_WLOCK(inp);
                if ((inp->inp_vflag & INP_IPV6) == 0) {
                        INP_WUNLOCK(inp);
@@ -726,7 +726,7 @@ in6_pcblookup_local(struct inpcbinfo *pcbinfo, struct 
                head = &pcbinfo->ipi_hashbase[INP_PCBHASH(
                    INP6_PCBHASHKEY(&in6addr_any), lport, 0,
                    pcbinfo->ipi_hashmask)];
-               LIST_FOREACH(inp, head, inp_hash) {
+               CK_LIST_FOREACH(inp, head, inp_hash) {
                        /* XXX inp locking */
                        if ((inp->inp_vflag & INP_IPV6) == 0)
                                continue;
@@ -756,7 +756,7 @@ in6_pcblookup_local(struct inpcbinfo *pcbinfo, struct 
                 */
                porthash = &pcbinfo->ipi_porthashbase[INP_PCBPORTHASH(lport,
                    pcbinfo->ipi_porthashmask)];
-               LIST_FOREACH(phd, porthash, phd_hash) {
+               CK_LIST_FOREACH(phd, porthash, phd_hash) {
                        if (phd->phd_port == lport)
                                break;
                }
@@ -765,7 +765,7 @@ in6_pcblookup_local(struct inpcbinfo *pcbinfo, struct 
                         * Port is in use by one or more PCBs. Look for best
                         * fit.
                         */
-                       LIST_FOREACH(inp, &phd->phd_pcblist, inp_portlist) {
+                       CK_LIST_FOREACH(inp, &phd->phd_pcblist, inp_portlist) {
                                wildcard = 0;
                                if (cred != NULL &&
                                    !prison_equal_ip6(cred->cr_prison,
@@ -807,7 +807,7 @@ in6_pcbpurgeif0(struct inpcbinfo *pcbinfo, struct ifne
        int i, gap;
 
        INP_INFO_WLOCK(pcbinfo);
-       LIST_FOREACH(in6p, pcbinfo->ipi_listhead, inp_list) {
+       CK_LIST_FOREACH(in6p, pcbinfo->ipi_listhead, inp_list) {
                INP_WLOCK(in6p);
                im6o = in6p->in6p_moptions;
                if ((in6p->inp_vflag & INP_IPV6) && im6o != NULL) {
@@ -1149,7 +1149,7 @@ in6_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, s
        tmpinp = NULL;
        head = &pcbinfo->ipi_hashbase[INP_PCBHASH(
            INP6_PCBHASHKEY(faddr), lport, fport, pcbinfo->ipi_hashmask)];
-       LIST_FOREACH(inp, head, inp_hash) {
+       CK_LIST_FOREACH(inp, head, inp_hash) {
                /* XXX inp locking */
                if ((inp->inp_vflag & INP_IPV6) == 0)
                        continue;
@@ -1201,7 +1201,7 @@ in6_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, s
                head = &pcbinfo->ipi_hashbase[INP_PCBHASH(
                    INP6_PCBHASHKEY(&in6addr_any), lport, 0,
                    pcbinfo->ipi_hashmask)];
-               LIST_FOREACH(inp, head, inp_hash) {
+               CK_LIST_FOREACH(inp, head, inp_hash) {
                        /* XXX inp locking */
                        if ((inp->inp_vflag & INP_IPV6) == 0)
                                continue;

Modified: head/sys/netinet6/raw_ip6.c
==============================================================================
--- head/sys/netinet6/raw_ip6.c Tue Jun 12 22:18:15 2018        (r335015)
+++ head/sys/netinet6/raw_ip6.c Tue Jun 12 22:18:20 2018        (r335016)
@@ -173,7 +173,7 @@ rip6_input(struct mbuf **mp, int *offp, int proto)
        ifp = m->m_pkthdr.rcvif;
 
        INP_INFO_RLOCK(&V_ripcbinfo);
-       LIST_FOREACH(in6p, &V_ripcb, inp_list) {
+       CK_LIST_FOREACH(in6p, &V_ripcb, inp_list) {
                /* XXX inp locking */
                if ((in6p->inp_vflag & INP_IPV6) == 0)
                        continue;

Modified: head/sys/netinet6/udp6_usrreq.c
==============================================================================
--- head/sys/netinet6/udp6_usrreq.c     Tue Jun 12 22:18:15 2018        
(r335015)
+++ head/sys/netinet6/udp6_usrreq.c     Tue Jun 12 22:18:20 2018        
(r335016)
@@ -318,7 +318,7 @@ udp6_input(struct mbuf **mp, int *offp, int proto)
                 */
                pcblist = udp_get_pcblist(nxt);
                last = NULL;
-               LIST_FOREACH(inp, pcblist, inp_list) {
+               CK_LIST_FOREACH(inp, pcblist, inp_list) {
                        if ((inp->inp_vflag & INP_IPV6) == 0)
                                continue;
                        if (inp->inp_lport != uh->uh_dport)
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to