/freebsd-11.0-release/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 | 140 static struct inpcb *in_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, 212 * the pcbinfo lock held, and often, the inpcb lock held, as these utility 221 in_pcbinfo_init(struct inpcbinfo *pcbinfo, const char *name, argument 227 INP_INFO_LOCK_INIT(pcbinfo, name); 228 INP_HASH_LOCK_INIT(pcbinfo, "pcbinfohash"); /* XXXRW: argument? */ 229 INP_LIST_LOCK_INIT(pcbinfo, "pcbinfolist"); 231 pcbinfo->ipi_vnet = curvnet; 233 pcbinfo->ipi_listhead = listhead; 234 LIST_INIT(pcbinfo->ipi_listhead); 235 pcbinfo 255 in_pcbinfo_destroy(struct inpcbinfo *pcbinfo) argument 278 in_pcballoc(struct socket *so, struct inpcbinfo *pcbinfo) argument 379 struct inpcbinfo *pcbinfo; local 557 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 1190 struct inpcbinfo *pcbinfo; local 1219 struct inpcbinfo *pcbinfo; local 1267 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 1420 in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_addr faddr, int errno, struct inpcb *(*notify)(struct inpcb *, int)) argument 1446 in_pcbpurgeif0(struct inpcbinfo *pcbinfo, struct ifnet *ifp) argument 1491 in_pcblookup_local(struct inpcbinfo *pcbinfo, struct in_addr laddr, u_short lport, int lookupflags, struct ucred *cred) argument 1613 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 1828 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 1951 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 1985 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 2020 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 2070 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 2157 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 2201 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local [all...] |
H A D | udp_usrreq.c | 400 struct inpcbinfo *pcbinfo; local 524 pcbinfo = udp_get_inpcbinfo(proto); 531 INP_INFO_RLOCK(pcbinfo); 626 INP_INFO_RUNLOCK(pcbinfo); 633 INP_INFO_RUNLOCK(pcbinfo); 654 inp = in_pcblookup_mbuf(pcbinfo, ip->ip_src, uh->uh_sport, 662 inp = in_pcblookup(pcbinfo, ip->ip_src, 672 inp = in_pcblookup_mbuf(pcbinfo, ip->ip_src, uh->uh_sport, 760 struct inpcbinfo *pcbinfo) 789 inp = in_pcblookup(pcbinfo, fadd 759 udp_common_ctlinput(int cmd, struct sockaddr *sa, void *vip, struct inpcbinfo *pcbinfo) argument 1135 struct inpcbinfo *pcbinfo; local 1713 struct inpcbinfo *pcbinfo; local 1733 struct inpcbinfo *pcbinfo; local 1796 struct inpcbinfo *pcbinfo; local 1814 struct inpcbinfo *pcbinfo; local 1834 struct inpcbinfo *pcbinfo; local 1865 struct inpcbinfo *pcbinfo; local 1888 struct inpcbinfo *pcbinfo; local [all...] |
H A D | raw_ip.c | 158 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 162 INP_INFO_WLOCK_ASSERT(pcbinfo); 169 inp->inp_faddr.s_addr, pcbinfo->ipi_hashmask); 172 pcbhash = &pcbinfo->ipi_hashbase[hash]; 861 struct inpcbinfo *pcbinfo; local 863 pcbinfo = inp->inp_pcbinfo; 864 INP_INFO_WLOCK(pcbinfo); 873 INP_INFO_WUNLOCK(pcbinfo);
|
H A D | in_pcb.h | 149 * One noteworthy exception is that the global pcbinfo lock follows a different 162 * (p) - Protected by the pcbinfo lock for the inpcb 180 * TODO: Currently only the TCP stack is leveraging the global pcbinfo lock 309 * Each pcbinfo is protected by three locks: ipi_lock, ipi_hash_lock and 638 * Constants for pcbinfo.ipi_hashfields. 724 void in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_addr,
|
/freebsd-11.0-release/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 1047 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 1159 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 1193 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 1228 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 | 201 struct inpcbinfo *pcbinfo; local 284 pcbinfo = udp_get_inpcbinfo(nxt); 290 INP_INFO_RLOCK(pcbinfo); 403 INP_INFO_RUNLOCK(pcbinfo); 427 inp = in6_pcblookup_mbuf(pcbinfo, &ip6->ip6_src, 436 inp = in6_pcblookup(pcbinfo, &ip6->ip6_src, 446 inp = in6_pcblookup_mbuf(pcbinfo, &ip6->ip6_src, 490 INP_INFO_RUNLOCK(pcbinfo); 499 struct inpcbinfo *pcbinfo) 558 inp = in6_pcblookup_mbuf(pcbinfo, 498 udp6_common_ctlinput(int cmd, struct sockaddr *sa, void *d, struct inpcbinfo *pcbinfo) argument 925 struct inpcbinfo *pcbinfo; local 960 struct inpcbinfo *pcbinfo; local 1008 struct inpcbinfo *pcbinfo; local 1053 struct inpcbinfo *pcbinfo; local 1087 struct inpcbinfo *pcbinfo; local 1150 struct inpcbinfo *pcbinfo; local 1171 struct inpcbinfo *pcbinfo; local 1215 struct inpcbinfo *pcbinfo; local [all...] |
H A D | in6_src.c | 965 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 969 INP_HASH_WLOCK_ASSERT(pcbinfo);
|
/freebsd-11.0-release/usr.bin/netstat/ |
H A D | inet.c | 188 struct inpcbinfo pcbinfo; local 201 kread(off, &pcbinfo, sizeof(pcbinfo)); 204 (pcbinfo.ipi_count + pcbinfo.ipi_count / 8) * 208 (pcbinfo.ipi_count + pcbinfo.ipi_count / 8) * 233 xig.xig_count = pcbinfo.ipi_count; 234 xig.xig_gen = pcbinfo.ipi_gencnt; 245 KREAD(pcbinfo [all...] |