/freebsd-13-stable/sys/netinet/ |
H A D | in_pcbgroup.c | 127 in_pcbgroup_init(struct inpcbinfo *pcbinfo, u_int hashfields, argument 169 pcbinfo->ipi_hashfields = hashfields; 170 pcbinfo->ipi_pcbgroups = malloc(numpcbgroups * 171 sizeof(*pcbinfo->ipi_pcbgroups), M_PCB, M_WAITOK | M_ZERO); 172 pcbinfo->ipi_npcbgroups = numpcbgroups; 173 pcbinfo->ipi_wildbase = hashinit(hash_nelements, M_PCB, 174 &pcbinfo->ipi_wildmask); 175 for (pgn = 0; pgn < pcbinfo->ipi_npcbgroups; pgn++) { 176 pcbgroup = &pcbinfo->ipi_pcbgroups[pgn]; 200 in_pcbgroup_destroy(struct inpcbinfo *pcbinfo) argument 229 in_pcbgroup_getbucket(struct inpcbinfo *pcbinfo, uint32_t hash) argument 246 in_pcbgroup_byhash(struct inpcbinfo *pcbinfo, u_int hashtype, uint32_t hash) argument 263 in_pcbgroup_bymbuf(struct inpcbinfo *pcbinfo, struct mbuf *m) argument 271 in_pcbgroup_bytuple(struct inpcbinfo *pcbinfo, struct in_addr laddr, u_short lport, struct in_addr faddr, u_short fport) argument 328 struct inpcbinfo *pcbinfo; local 350 struct inpcbinfo *pcbinfo; local 406 in_pcbgroup_update_internal(struct inpcbinfo *pcbinfo, struct inpcbgroup *newpcbgroup, struct inpcb *inp) argument 472 struct inpcbinfo *pcbinfo; local 498 struct inpcbinfo *pcbinfo; local 562 in_pcbgroup_enabled(struct inpcbinfo *pcbinfo) argument [all...] |
H A D | in_pcb.c | 151 static struct inpcb *in_pcblookup_hash_locked(struct inpcbinfo *pcbinfo, 254 * the pcbinfo lock held, and often, the inpcb lock held, as these utility 352 struct inpcbinfo *pcbinfo; local 357 pcbinfo = inp->inp_pcbinfo; 360 INP_HASH_WLOCK_ASSERT(pcbinfo); 379 idx = INP_PCBPORTHASH(inp->inp_lport, pcbinfo->ipi_lbgrouphashmask); 380 hdr = &pcbinfo->ipi_lbgrouphashbase[idx]; 426 struct inpcbinfo *pcbinfo; local 431 pcbinfo = inp->inp_pcbinfo; 434 INP_HASH_WLOCK_ASSERT(pcbinfo); 458 struct inpcbinfo *pcbinfo; local 523 in_pcbinfo_init(struct inpcbinfo *pcbinfo, const char *name, struct inpcbhead *listhead, int hash_nelements, int porthash_nelements, char *inpcbzone_name, uma_init inpcbzone_init, u_int hashfields) argument 559 in_pcbinfo_destroy(struct inpcbinfo *pcbinfo) argument 584 in_pcballoc(struct socket *so, struct inpcbinfo *pcbinfo) argument 693 struct inpcbinfo *pcbinfo; local 917 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 1573 struct inpcbinfo *pcbinfo; local 1621 struct inpcbinfo *pcbinfo; local 1681 struct inpcbinfo *pcbinfo; local 1764 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 1891 in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_addr faddr, int errno, struct inpcb *(*notify)(struct inpcb *, int)) argument 1917 in_pcbpurgeif0(struct inpcbinfo *pcbinfo, struct ifnet *ifp) argument 1967 in_pcblookup_local(struct inpcbinfo *pcbinfo, struct in_addr laddr, u_short lport, int lookupflags, struct ucred *cred) argument 2085 in_pcblookup_lbgroup(const struct inpcbinfo *pcbinfo, const struct in_addr *laddr, uint16_t lport, const struct in_addr *faddr, uint16_t fport, int lookupflags, int numa_domain) argument 2146 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 2382 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, uint8_t numa_domain) argument 2514 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, uint8_t numa_domain) argument 2558 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 2593 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 2643 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 2737 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 2781 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local [all...] |
H A D | udp_usrreq.c | 400 struct inpcbinfo *pcbinfo; local 527 pcbinfo = udp_get_inpcbinfo(proto); 673 inp = in_pcblookup_mbuf(pcbinfo, ip->ip_src, uh->uh_sport, 681 inp = in_pcblookup(pcbinfo, ip->ip_src, 691 inp = in_pcblookup_mbuf(pcbinfo, ip->ip_src, uh->uh_sport, 784 struct inpcbinfo *pcbinfo) 813 inp = in_pcblookup(pcbinfo, faddr, uh->uh_dport, 822 inp = in_pcblookup(pcbinfo, faddr, uh->uh_dport, 839 in_pcbnotifyall(pcbinfo, faddr, inetctlerrmap[cmd], 1154 struct inpcbinfo *pcbinfo; local 783 udp_common_ctlinput(int cmd, struct sockaddr *sa, void *vip, struct inpcbinfo *pcbinfo) argument 1538 struct inpcbinfo *pcbinfo; local 1559 struct inpcbinfo *pcbinfo; local 1624 struct inpcbinfo *pcbinfo; local 1657 struct inpcbinfo *pcbinfo; local 1678 struct inpcbinfo *pcbinfo; local 1717 struct inpcbinfo *pcbinfo; local 1740 struct inpcbinfo *pcbinfo; local [all...] |
H A D | raw_ip.c | 160 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 164 INP_INFO_WLOCK_ASSERT(pcbinfo); 171 inp->inp_faddr.s_addr, pcbinfo->ipi_hashmask); 174 pcbhash = &pcbinfo->ipi_hashbase[hash]; 940 struct inpcbinfo *pcbinfo; local 942 pcbinfo = inp->inp_pcbinfo; 943 INP_INFO_WLOCK(pcbinfo); 952 INP_INFO_WUNLOCK(pcbinfo);
|
H A D | in_pcb.h | 146 * One noteworthy exception is that the global pcbinfo lock follows a different 161 * (p) - Protected by the pcbinfo lock for the inpcb 224 * TODO: Currently only the TCP stack is leveraging the global pcbinfo lock 419 * Each pcbinfo is protected by three locks: ipi_lock, ipi_hash_lock and 775 * Constants for pcbinfo.ipi_hashfields. 865 void in_pcbnotifyall(struct inpcbinfo *pcbinfo, struct in_addr,
|
/freebsd-13-stable/sys/netinet6/ |
H A D | in6_pcbgroup.c | 58 in6_pcbgroup_getbucket(struct inpcbinfo *pcbinfo, uint32_t hash) argument 64 return (hash % pcbinfo->ipi_npcbgroups); 75 in6_pcbgroup_byhash(struct inpcbinfo *pcbinfo, u_int hashtype, uint32_t hash) argument 79 if ((pcbinfo->ipi_hashfields == IPI_HASHFIELDS_4TUPLE && 81 (pcbinfo->ipi_hashfields == IPI_HASHFIELDS_4TUPLE && 83 (pcbinfo->ipi_hashfields == IPI_HASHFIELDS_2TUPLE && 85 return (&pcbinfo->ipi_pcbgroups[ 86 in6_pcbgroup_getbucket(pcbinfo, hash)]); 92 in6_pcbgroup_bymbuf(struct inpcbinfo *pcbinfo, struct mbuf *m) argument 95 return (in6_pcbgroup_byhash(pcbinfo, M_HASHTYPE_GE 100 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 | 123 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 135 INP_HASH_WLOCK_ASSERT(pcbinfo); 217 t = in6_pcblookup_local(pcbinfo, 248 t = in_pcblookup_local(pcbinfo, 267 t = in6_pcblookup_local(pcbinfo, &sin6->sin6_addr, 291 t = in_pcblookup_local(pcbinfo, sin.sin_addr, 411 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 425 INP_HASH_WLOCK_ASSERT(pcbinfo); 445 if (in6_pcblookup_hash_locked(pcbinfo, &sin6->sin6_addr, 641 in6_pcbnotify(struct inpcbinfo *pcbinfo, struc argument 740 in6_pcblookup_local(struct inpcbinfo *pcbinfo, struct in6_addr *laddr, u_short lport, int lookupflags, struct ucred *cred) argument 834 in6_pcbpurgeif0(struct inpcbinfo *pcbinfo, struct ifnet *ifp) argument 904 in6_pcblookup_lbgroup(const struct inpcbinfo *pcbinfo, const struct in6_addr *laddr, uint16_t lport, const struct in6_addr *faddr, uint16_t fport, int lookupflags, uint8_t numa_domain) argument 964 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 1164 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, uint8_t numa_domain) argument 1286 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, uint8_t numa_domain) argument 1329 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 1364 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 | 218 struct inpcbinfo *pcbinfo; local 313 pcbinfo = udp_get_inpcbinfo(nxt); 469 inp = in6_pcblookup_mbuf(pcbinfo, &ip6->ip6_src, 478 inp = in6_pcblookup(pcbinfo, &ip6->ip6_src, 488 inp = in6_pcblookup_mbuf(pcbinfo, &ip6->ip6_src, 547 struct inpcbinfo *pcbinfo) 606 inp = in6_pcblookup_mbuf(pcbinfo, &ip6->ip6_dst, 626 (void)in6_pcbnotify(pcbinfo, sa, uh.uh_dport, 630 (void)in6_pcbnotify(pcbinfo, sa, 0, 862 struct inpcbinfo *pcbinfo; local 546 udp6_common_ctlinput(int cmd, struct sockaddr *sa, void *d, struct inpcbinfo *pcbinfo) argument 1003 struct inpcbinfo *pcbinfo; local 1038 struct inpcbinfo *pcbinfo; local 1086 struct inpcbinfo *pcbinfo; local 1140 struct inpcbinfo *pcbinfo; local 1177 struct inpcbinfo *pcbinfo; local 1275 struct inpcbinfo *pcbinfo; local 1296 struct inpcbinfo *pcbinfo; local [all...] |
H A D | in6_pcb.h | 96 in6_pcblookup_hash_locked(struct inpcbinfo *pcbinfo,
|
H A D | in6_src.c | 940 struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; local 944 INP_HASH_WLOCK_ASSERT(pcbinfo);
|