/freebsd-11-stable/sys/netinet/ |
H A D | in_pcbgroup.c | 125 in_pcbgroup_init(struct inpcbinfo *pcbinfo, u_int hashfields, argument 167 pcbinfo->ipi_hashfields = hashfields; 168 pcbinfo->ipi_pcbgroups = malloc(numpcbgroups * 169 sizeof(*pcbinfo->ipi_pcbgroups), M_PCB, M_WAITOK | M_ZERO); 170 pcbinfo->ipi_npcbgroups = numpcbgroups; 171 pcbinfo->ipi_wildbase = hashinit(hash_nelements, M_PCB, 172 &pcbinfo->ipi_wildmask); 173 for (pgn = 0; pgn < pcbinfo->ipi_npcbgroups; pgn++) { 174 pcbgroup = &pcbinfo->ipi_pcbgroups[pgn]; 198 in_pcbgroup_destroy(struct inpcbinfo *pcbinfo) argument 227 in_pcbgroup_getbucket(struct inpcbinfo *pcbinfo, uint32_t hash) argument 244 in_pcbgroup_byhash(struct inpcbinfo *pcbinfo, u_int hashtype, uint32_t hash) argument 261 in_pcbgroup_bymbuf(struct inpcbinfo *pcbinfo, struct mbuf *m) argument 269 in_pcbgroup_bytuple(struct inpcbinfo *pcbinfo, struct in_addr laddr, u_short lport, struct in_addr faddr, u_short fport) argument 326 struct inpcbinfo *pcbinfo; local 348 struct inpcbinfo *pcbinfo; local 404 in_pcbgroup_update_internal(struct inpcbinfo *pcbinfo, struct inpcbgroup *newpcbgroup, struct inpcb *inp) argument 470 struct inpcbinfo *pcbinfo; local 496 struct inpcbinfo *pcbinfo; local 560 in_pcbgroup_enabled(struct inpcbinfo *pcbinfo) argument [all...] |
H A D | in_pcb.c | 136 static struct inpcb *in_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, 208 * the pcbinfo lock held, and often, the inpcb lock held, as these utility 217 in_pcbinfo_init(struct inpcbinfo *pcbinfo, const char *name, argument 223 INP_INFO_LOCK_INIT(pcbinfo, name); 224 INP_HASH_LOCK_INIT(pcbinfo, "pcbinfohash"); /* XXXRW: argument? */ 225 INP_LIST_LOCK_INIT(pcbinfo, "pcbinfolist"); 227 pcbinfo->ipi_vnet = curvnet; 229 pcbinfo->ipi_listhead = listhead; 230 LIST_INIT(pcbinfo->ipi_listhead); 231 pcbinfo 251 in_pcbinfo_destroy(struct inpcbinfo *pcbinfo) argument 274 in_pcballoc(struct socket *so, struct inpcbinfo *pcbinfo) argument 381 struct inpcbinfo *pcbinfo; local 559 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 1192 struct inpcbinfo *pcbinfo; local 1221 struct inpcbinfo *pcbinfo; local 1269 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 1422 in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_addr faddr, int errno, struct inpcb *(*notify)(struct inpcb *, int)) argument 1448 in_pcbpurgeif0(struct inpcbinfo *pcbinfo, struct ifnet *ifp) argument 1493 in_pcblookup_local(struct inpcbinfo *pcbinfo, struct in_addr laddr, u_short lport, int lookupflags, struct ucred *cred) argument 1615 in_pcblookup_group(struct inpcbinfo *pcbinfo, struct inpcbgroup *pcbgroup, struct in_addr faddr, u_int fport_arg, struct in_addr laddr, u_int lport_arg, int lookupflags, struct ifnet *ifp) argument 1845 in_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, struct in_addr faddr, u_int fport_arg, struct in_addr laddr, u_int lport_arg, int lookupflags, struct ifnet *ifp) argument 1968 in_pcblookup_hash(struct inpcbinfo *pcbinfo, struct in_addr faddr, u_int fport, struct in_addr laddr, u_int lport, int lookupflags, struct ifnet *ifp) argument 2017 in_pcblookup(struct inpcbinfo *pcbinfo, struct in_addr faddr, u_int fport, struct in_addr laddr, u_int lport, int lookupflags, struct ifnet *ifp) argument 2052 in_pcblookup_mbuf(struct inpcbinfo *pcbinfo, struct in_addr faddr, u_int fport, struct in_addr laddr, u_int lport, int lookupflags, struct ifnet *ifp, struct mbuf *m) argument 2102 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 2189 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 2233 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local [all...] |
H A D | udp_usrreq.c | 385 struct inpcbinfo *pcbinfo; local 509 pcbinfo = udp_get_inpcbinfo(proto); 516 INP_INFO_RLOCK(pcbinfo); 611 INP_INFO_RUNLOCK(pcbinfo); 618 INP_INFO_RUNLOCK(pcbinfo); 639 inp = in_pcblookup_mbuf(pcbinfo, ip->ip_src, uh->uh_sport, 647 inp = in_pcblookup(pcbinfo, ip->ip_src, 657 inp = in_pcblookup_mbuf(pcbinfo, ip->ip_src, uh->uh_sport, 747 struct inpcbinfo *pcbinfo) 776 inp = in_pcblookup(pcbinfo, fadd 746 udp_common_ctlinput(int cmd, struct sockaddr *sa, void *vip, struct inpcbinfo *pcbinfo) argument 1100 struct inpcbinfo *pcbinfo; local 1548 struct inpcbinfo *pcbinfo; local 1568 struct inpcbinfo *pcbinfo; local 1631 struct inpcbinfo *pcbinfo; local 1649 struct inpcbinfo *pcbinfo; local 1669 struct inpcbinfo *pcbinfo; local 1700 struct inpcbinfo *pcbinfo; local 1723 struct inpcbinfo *pcbinfo; local [all...] |
H A D | raw_ip.c | 156 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 160 INP_INFO_WLOCK_ASSERT(pcbinfo); 167 inp->inp_faddr.s_addr, pcbinfo->ipi_hashmask); 170 pcbhash = &pcbinfo->ipi_hashbase[hash]; 897 struct inpcbinfo *pcbinfo; local 899 pcbinfo = inp->inp_pcbinfo; 900 INP_INFO_WLOCK(pcbinfo); 909 INP_INFO_WUNLOCK(pcbinfo);
|
H A D | in_pcb.h | 150 * One noteworthy exception is that the global pcbinfo lock follows a different 163 * (p) - Protected by the pcbinfo lock for the inpcb 181 * TODO: Currently only the TCP stack is leveraging the global pcbinfo lock 310 * Each pcbinfo is protected by three locks: ipi_lock, ipi_hash_lock and 639 * Constants for pcbinfo.ipi_hashfields. 725 void in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_addr,
|
/freebsd-11-stable/sys/netinet6/ |
H A D | in6_pcbgroup.c | 56 in6_pcbgroup_getbucket(struct inpcbinfo *pcbinfo, uint32_t hash) argument 62 return (hash % pcbinfo->ipi_npcbgroups); 73 in6_pcbgroup_byhash(struct inpcbinfo *pcbinfo, u_int hashtype, uint32_t hash) argument 77 if ((pcbinfo->ipi_hashfields == IPI_HASHFIELDS_4TUPLE && 79 (pcbinfo->ipi_hashfields == IPI_HASHFIELDS_4TUPLE && 81 (pcbinfo->ipi_hashfields == IPI_HASHFIELDS_2TUPLE && 83 return (&pcbinfo->ipi_pcbgroups[ 84 in6_pcbgroup_getbucket(pcbinfo, hash)]); 90 in6_pcbgroup_bymbuf(struct inpcbinfo *pcbinfo, struct mbuf *m) argument 93 return (in6_pcbgroup_byhash(pcbinfo, M_HASHTYPE_GE 98 in6_pcbgroup_bytuple(struct inpcbinfo *pcbinfo, const struct in6_addr *laddrp, u_short lport, const struct in6_addr *faddrp, u_short fport) argument [all...] |
H A D | in6_pcb.c | 121 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 127 INP_HASH_WLOCK_ASSERT(pcbinfo); 205 t = in6_pcblookup_local(pcbinfo, 235 t = in_pcblookup_local(pcbinfo, 254 t = in6_pcblookup_local(pcbinfo, &sin6->sin6_addr, 276 t = in_pcblookup_local(pcbinfo, sin.sin_addr, 395 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 401 INP_HASH_WLOCK_ASSERT(pcbinfo); 410 if (in6_pcblookup_hash_locked(pcbinfo, &sin6->sin6_addr, 588 in6_pcbnotify(struct inpcbinfo *pcbinfo, struc argument 687 in6_pcblookup_local(struct inpcbinfo *pcbinfo, struct in6_addr *laddr, u_short lport, int lookupflags, struct ucred *cred) argument 781 in6_pcbpurgeif0(struct inpcbinfo *pcbinfo, struct ifnet *ifp) argument 862 in6_pcblookup_group(struct inpcbinfo *pcbinfo, struct inpcbgroup *pcbgroup, struct in6_addr *faddr, u_int fport_arg, struct in6_addr *laddr, u_int lport_arg, int lookupflags, struct ifnet *ifp) argument 1062 in6_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, struct in6_addr *faddr, u_int fport_arg, struct in6_addr *laddr, u_int lport_arg, int lookupflags, struct ifnet *ifp) argument 1174 in6_pcblookup_hash(struct inpcbinfo *pcbinfo, struct in6_addr *faddr, u_int fport, struct in6_addr *laddr, u_int lport, int lookupflags, struct ifnet *ifp) argument 1223 in6_pcblookup(struct inpcbinfo *pcbinfo, struct in6_addr *faddr, u_int fport, struct in6_addr *laddr, u_int lport, int lookupflags, struct ifnet *ifp) argument 1258 in6_pcblookup_mbuf(struct inpcbinfo *pcbinfo, struct in6_addr *faddr, u_int fport, struct in6_addr *laddr, u_int lport, int lookupflags, struct ifnet *ifp, struct mbuf *m) argument [all...] |
H A D | udp6_usrreq.c | 198 struct inpcbinfo *pcbinfo; local 281 pcbinfo = udp_get_inpcbinfo(nxt); 287 INP_INFO_RLOCK(pcbinfo); 400 INP_INFO_RUNLOCK(pcbinfo); 424 inp = in6_pcblookup_mbuf(pcbinfo, &ip6->ip6_src, 433 inp = in6_pcblookup(pcbinfo, &ip6->ip6_src, 443 inp = in6_pcblookup_mbuf(pcbinfo, &ip6->ip6_src, 486 INP_INFO_RUNLOCK(pcbinfo); 495 struct inpcbinfo *pcbinfo) 554 inp = in6_pcblookup_mbuf(pcbinfo, 494 udp6_common_ctlinput(int cmd, struct sockaddr *sa, void *d, struct inpcbinfo *pcbinfo) argument 921 struct inpcbinfo *pcbinfo; local 956 struct inpcbinfo *pcbinfo; local 1004 struct inpcbinfo *pcbinfo; local 1053 struct inpcbinfo *pcbinfo; local 1087 struct inpcbinfo *pcbinfo; local 1178 struct inpcbinfo *pcbinfo; local 1199 struct inpcbinfo *pcbinfo; local 1243 struct inpcbinfo *pcbinfo; local [all...] |
H A D | in6_src.c | 969 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 973 INP_HASH_WLOCK_ASSERT(pcbinfo);
|
/freebsd-11-stable/usr.bin/netstat/ |
H A D | inet.c | 189 struct inpcbinfo pcbinfo; local 202 kread(off, &pcbinfo, sizeof(pcbinfo)); 205 (pcbinfo.ipi_count + pcbinfo.ipi_count / 8) * 209 (pcbinfo.ipi_count + pcbinfo.ipi_count / 8) * 234 xig.xig_count = pcbinfo.ipi_count; 235 xig.xig_gen = pcbinfo.ipi_gencnt; 246 KREAD(pcbinfo [all...] |