aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/inet_hashtables.c
AgeCommit message (Expand)AuthorFilesLines
9 daystcp: get rid of twsk_unique()Eric Dumazet1-1/+2
2024-03-14tcp: Fix refcnt handling in __inet_hash_connect().Kuniyuki Iwashima1-1/+1
2024-03-07inet: move inet_ehash_secret and udp_ehash_secret into net_hotdataEric Dumazet1-2/+1
2024-02-16dccp/tcp: Unhash sk from ehash for tb2 alloc failure after check_estalblished().Kuniyuki Iwashima1-1/+24
2023-12-22tcp: Remove dead code and fields for bhash2.Kuniyuki Iwashima1-2/+1
2023-12-22tcp: Link sk and twsk to tb2->owners using skc_bind_node.Kuniyuki Iwashima1-4/+4
2023-12-22tcp: Unlink sk from bhash.Kuniyuki Iwashima1-3/+0
2023-12-22tcp: Check hlist_empty(&tb->bhash2) instead of hlist_empty(&tb->owners).Kuniyuki Iwashima1-3/+3
2023-12-22tcp: Link bhash2 to bhash.Kuniyuki Iwashima1-10/+11
2023-12-22tcp: Rename tb in inet_bind2_bucket_(init|create)().Kuniyuki Iwashima1-16/+16
2023-12-22tcp: Save address type in inet_bind2_bucket.Kuniyuki Iwashima1-16/+13
2023-12-22tcp: Save v4 address as v4-mapped-v6 in inet_bind2_bucket.v6_rcv_saddr.Kuniyuki Iwashima1-17/+17
2023-12-22tcp: Rearrange tests in inet_bind2_bucket_(addr_match|match_addr_any)().Kuniyuki Iwashima1-13/+12
2023-12-22tcp: Use bhash2 for v4-mapped-v6 non-wildcard address.Kuniyuki Iwashima1-1/+2
2023-12-15tcp/dccp: change source port selection at connect() timeEric Dumazet1-11/+16
2023-11-10net: set SOCK_RCU_FREE before inserting socket into hashtableStanislav Fomichev1-1/+1
2023-10-13tcp: Fix listen() warning with v4-mapped-v6 address.Kuniyuki Iwashima1-15/+9
2023-09-13tcp: Fix bind() regression for v4-mapped-v6 non-wildcard address.Kuniyuki Iwashima1-1/+6
2023-09-13tcp: Fix bind() regression for v4-mapped-v6 wildcard address.Kuniyuki Iwashima1-1/+2
2023-09-13tcp: Factorise sk_family-independent comparison in inet_bind2_bucket_match(_a...Kuniyuki Iwashima1-15/+13
2023-07-31net: remove duplicate INDIRECT_CALLABLE_DECLARE of udp[6]_ehashfnLorenz Bauer1-2/+0
2023-07-25net: remove duplicate sk_lookup helpersLorenz Bauer1-13/+13
2023-07-25net: document inet[6]_lookup_reuseport sk_state requirementsLorenz Bauer1-0/+15
2023-07-25net: remove duplicate reuseport_lookup functionsLorenz Bauer1-7/+13
2023-07-25net: export inet_lookup_reuseport and inet6_lookup_reuseportLorenz Bauer1-7/+8
2023-07-19Revert "tcp: avoid the lookup process failing to get sk in ehash table"Kuniyuki Iwashima1-15/+2
2023-03-29ipv6: Remove in6addr_any alternatives.Kuniyuki Iwashima1-7/+4
2023-03-15tcp: Fix bind() conflict check for dual-stack wildcard address.Kuniyuki Iwashima1-1/+7
2023-01-25inet: Add IP_LOCAL_PORT_RANGE socket optionJakub Sitnicki1-1/+1
2023-01-20Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/netJakub Kicinski1-2/+15
2023-01-19tcp: avoid the lookup process failing to get sk in ehash tableJason Xing1-2/+15
2023-01-17inet: fix fast path in __inet_hash_connect()Pietro Borrello1-11/+1
2022-12-30tcp: Add TIME_WAIT sockets in bhash2.Kuniyuki Iwashima1-3/+5
2022-12-12Merge tag 'random-6.2-rc1-for-linus' of git://git.kernel.org/pub/scm/linux/ke...Linus Torvalds1-1/+1
2022-11-22dccp/tcp: Fixup bhash2 bucket when connect() fails.Kuniyuki Iwashima1-4/+34
2022-11-22dccp/tcp: Update saddr under bhash's lock.Kuniyuki Iwashima1-6/+39
2022-11-22dccp/tcp: Remove NULL check for prev_saddr in inet_bhash2_update_saddr().Kuniyuki Iwashima1-7/+4
2022-11-18treewide: use get_random_u32_below() instead of deprecated functionJason A. Donenfeld1-1/+1
2022-11-16tcp: configurable source port perturb table sizeGleb Mazovetskiy1-5/+5
2022-10-11treewide: use prandom_u32_max() when possible, part 1Jason A. Donenfeld1-1/+1
2022-10-03once: rename _SLOW to _SLEEPABLEJason A. Donenfeld1-2/+2
2022-10-03once: add DO_ONCE_SLOW() for sleepable contextsEric Dumazet1-2/+2
2022-09-28net: Fix incorrect address comparison when searching for a bind2 bucketMartin KaFai Lau1-0/+10
2022-09-20tcp: Introduce optional per-netns ehash.Kuniyuki Iwashima1-0/+47
2022-09-20tcp: Access &tcp_hashinfo via net.Kuniyuki Iwashima1-1/+1
2022-09-20tcp: Set NULL to sk->sk_prot->h.hashinfo.Kuniyuki Iwashima1-7/+7
2022-09-20tcp: Clean up some functions.Kuniyuki Iwashima1-14/+15
2022-08-24net: Add a bhash2 table hashed by port and addressJoanne Koong1-13/+255
2022-06-16Revert "net: Add a second bind table hashed by port and address"Joanne Koong1-182/+11
2022-06-08tcp: use alloc_large_system_hash() to allocate table_perturbMuchun Song1-4/+6
2022-05-20net: Add a second bind table hashed by port and addressJoanne Koong1-11/+182
2022-05-16inet: rename INET_MATCH()Eric Dumazet1-4/+4
2022-05-16ipv6: add READ_ONCE(sk->sk_bound_dev_if) in INET6_MATCH()Eric Dumazet1-1/+1
2022-05-13inet: add READ_ONCE(sk->sk_bound_dev_if) in INET_MATCH()Eric Dumazet1-10/+5
2022-05-12net: inet: Retire port only listening_hashMartin KaFai Lau1-38/+9
2022-05-12net: inet: Open code inet_hash2 and inet_unhash2Martin KaFai Lau1-55/+33
2022-05-12net: inet: Remove count from inet_listen_hashbucketMartin KaFai Lau1-6/+0
2022-05-04tcp: drop the hash_32() part from the index calculationWilly Tarreau1-1/+1
2022-05-04tcp: increase source port perturb table to 2^16Willy Tarreau1-4/+5
2022-05-04tcp: dynamically allocate the perturb table used by source portsWilly Tarreau1-2/+10
2022-05-04tcp: add small random increments to the source portWilly Tarreau1-4/+5
2022-05-04tcp: use different parts of the port_offset for index and offsetWilly Tarreau1-1/+1
2022-05-04secure_seq: use the 64 bits of the siphash for port offset calculationWilly Tarreau1-4/+6
2022-02-09tcp: Don't acquire inet_listen_hashbucket::lock with disabled BH.Sebastian Andrzej Siewior1-21/+32
2021-11-10bpf: Add ingress_ifindex to bpf_sk_lookupMark Pashmfouroush1-4/+4
2021-10-15tcp: switch orphan_count to bare per-cpu countersEric Dumazet1-1/+1
2021-10-07net: prefer socket bound to interface when not in VRFMike Manning1-1/+3
2021-06-15tcp: Keep TCP_CLOSE sockets in the reuseport group.Kuniyuki Iwashima1-1/+1
2021-02-11tcp: add some entropy in __inet_hash_connect()Eric Dumazet1-0/+5
2021-02-11tcp: change source port randomizarion at connect() timeEric Dumazet1-3/+17
2020-11-23tcp: fix race condition when creating child sockets from syncookiesRicardo Dias1-8/+60
2020-08-31net: ipv4: remove unused arg exact_dif in compute_scoreMiaohe Lin1-4/+2
2020-08-11net: initialize fastreuse on inet_inherit_portTim Froidcoeur1-0/+1
2020-07-17inet: Run SK_LOOKUP BPF program on socket lookupJakub Sitnicki1-0/+31
2020-07-17inet: Extract helper for selecting socket from reuseport groupJakub Sitnicki1-9/+20
2019-12-13tcp/dccp: fix possible race __inet_lookup_established()Eric Dumazet1-8/+8
2019-10-30net: annotate accesses to sk->sk_incoming_cpuEric Dumazet1-1/+1
2019-06-07Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller1-5/+1
2019-06-05net: ipv4: drop unneeded likely() call around IS_ERR()Enrico Weigelt1-1/+1
2019-05-30treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152Thomas Gleixner1-5/+1
2018-12-24net: dccp: fix kernel crash on module loadPeter Oskolkov1-8/+26
2018-12-17net: dccp: initialize (addr,port) listening hashtablePeter Oskolkov1-0/+1
2018-12-14net: tcp: prefer listeners bound to an addressPeter Oskolkov1-52/+8
2018-11-07net: ensure unbound stream socket to be chosen when not in a VRFMike Manning1-8/+6
2018-11-07net: allow binding socket in a VRF when there's an unbound socketRobert Shearman1-5/+15
2018-10-31mm: remove include/linux/bootmem.hMike Rapoport1-1/+1
2018-08-11bpf: Enable BPF_PROG_TYPE_SK_REUSEPORT bpf prog in reuseport selectionMartin KaFai Lau1-5/+9
2018-08-11bpf: Introduce BPF_PROG_TYPE_SK_REUSEPORTMartin KaFai Lau1-2/+3
2018-06-20net/tcp: Fix socket lookups with SO_BINDTODEVICEDavid Ahern1-2/+2
2018-02-01inet: Avoid unitialized variable warning in inet_unhash()Geert Uytterhoeven1-4/+2
2017-12-20net: tracepoint: replace tcp_set_state tracepoint with inet_sock_set_state tr...Yafang Shao1-1/+1
2017-12-03inet: Add a 2nd listener hashtable (port+addr)Martin KaFai Lau1-9/+159
2017-12-03inet: Add a count to struct inet_listen_hashbucketMartin KaFai Lau1-2/+9
2017-11-30net/reuseport: drop legacy codePaolo Abeni1-9/+2
2017-10-22soreuseport: fix initialization raceCraig Gallek1-4/+1
2017-08-07net: ipv4: add second dif to inet socket lookupsDavid Ahern1-10/+17
2017-07-03net: make sk_ehashfn() staticEric Dumazet1-1/+1
2017-07-01net: convert sock.sk_refcnt from atomic_t to refcount_tReshetova, Elena1-2/+2
2017-05-08treewide: use kv[mz]alloc* rather than opencoded variantsMichal Hocko1-5/+1
2017-01-18inet: kill smallest_size and smallest_portJosef Bacik1-3/+0
2017-01-18inet: collapse ipv4/v6 rcv_saddr_equal functions into oneJosef Bacik1-11/+5
2016-10-17net: Require exact match for TCP socket lookups if dif is l3mdevDavid Ahern1-3/+5
2016-05-04Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller1-0/+2
2016-05-01soreuseport: Fix TCP listener hash collisionCraig Gallek1-0/+2
2016-04-27net: rename NET_{ADD|INC}_STATS_BH()Eric Dumazet1-1/+1
2016-04-25soreuseport: Resolve merge conflict for v4/v6 ordering fixCraig Gallek1-1/+5
2016-04-07tcp/dccp: fix inet_reuseport_add_sock()Eric Dumazet1-2/+1
2016-04-04tcp/dccp: do not touch listener sk_refcnt under synfloodEric Dumazet1-48/+25
2016-04-04tcp/dccp: use rcu locking in inet_diag_find_one_icsk()Eric Dumazet1-4/+0
2016-02-12tcp/dccp: better use of ephemeral ports in connect()Eric Dumazet1-85/+85
2016-02-11soreuseport: fast reuseport TCP socket selectionCraig Gallek1-4/+60
2016-02-11inet: refactor inet[6]_lookup functions to take skbCraig Gallek1-0/+1
2016-02-11sock: struct proto hash function may errorCraig Gallek1-1/+3
2015-10-23tcp/dccp: fix hashdance race for passive sessionsEric Dumazet1-14/+25
2015-10-14tcp/dccp: fix potential NULL deref in __inet_inherit_port()Eric Dumazet1-0/+4
2015-10-12net: SO_INCOMING_CPU setsockopt() supportEric Dumazet1-0/+2
2015-10-03tcp/dccp: install syn_recv requests into ehash tableEric Dumazet1-2/+12
2015-09-29inet: constify __inet_inherit_port() sock argumentEric Dumazet1-1/+1
2015-07-23Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller1-6/+5
2015-07-21tcp: suppress a division by zero warningEric Dumazet1-6/+5
2015-07-09inet: inet_twsk_deschedule factorizationEric Dumazet1-6/+3
2015-07-09inet: simplify timewait refcountingEric Dumazet1-21/+10
2015-05-27tcp: connect() from bound sockets can be fasterEric Dumazet1-2/+7
2015-05-27tcp/dccp: try to not exhaust ip_local_port_range in connect()Eric Dumazet1-2/+8
2015-05-26tcp: fix/cleanup inet_ehash_locks_alloc()Eric Dumazet1-0/+31
2015-05-21inet_hashinfo: remove bsocket counterEric Dumazet1-7/+0
2015-04-13tcp/dccp: get rid of central timewait timerEric Dumazet1-2/+2
2015-04-03ipv4: coding style: comparison for inequality with NULLIan Morris1-1/+1
2015-03-18inet: get rid of last __inet_hash_connect() argumentEric Dumazet1-5/+4
2015-03-18ipv6: get rid of __inet6_hash()Eric Dumazet1-6/+6
2015-03-18inet: add IPv6 support to sk_ehashfn()Eric Dumazet1-1/+10
2015-03-18net: introduce sk_ehashfn() helperEric Dumazet1-11/+6
2015-03-18netns: constify net_hash_mix() and various callersEric Dumazet1-3/+3
2015-03-16inet: factorize sock_edemux()/sock_gen_put() codeEric Dumazet1-0/+6
2015-03-12inet: prepare sock_edemux() & sock_gen_put() for new SYN_RECV stateEric Dumazet1-0/+2
2015-03-12net: Kill hold_net release_netEric W. Biederman1-2/+1
2014-08-23net: use reciprocal_scale() helperDaniel Borkmann1-1/+1
2014-05-14net: Use a more standard macro for INET_ADDR_COOKIEJoe Perches1-2/+2
2014-05-14ipv4: make ip_local_reserved_ports per netnsWANG Cong1-1/+1
2013-10-19inet: convert inet_ehash_secret and ipv6_hash_secret to net_get_random_onceHannes Frederic Sowa1-0/+4
2013-10-19ipv4: split inet_ehashfn to hash functions per compilation unitHannes Frederic Sowa1-0/+21
2013-10-08tcp/dccp: remove twchainEric Dumazet1-54/+29
2013-10-08Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller1-1/+1
2013-10-02net: do not call sock_put() on TIMEWAIT socketsEric Dumazet1-1/+1
2013-09-30net ipv4: Convert ipv4.ip_local_port_range to be per netns v3Eric W. Biederman1-1/+1
2013-07-11inet: fix spacing in assignmentCamelia Groza1-1/+1
2013-02-27hlist: drop the node parameter from iteratorsSasha Levin1-5/+3
2013-01-23soreuseport: TCP/IPv4 implementationTom Herbert1-6/+22
2012-11-30net: move inet_dport/inet_num in sock_commonEric Dumazet1-13/+23
2012-04-15ipv4: fix checkpatch errorsDaniel Baluta1-1/+1
2011-08-06net: Compute protocol sequence numbers and fragment IDs using MD5.David S. Miller1-0/+1
2010-11-28inet: Fix __inet_inherit_port() to correctly increment bsockets and num_ownersNagendra Tomar1-2/+1
2010-10-21tproxy: fix hash locking issue when using port redirection in __inet_inherit_...Balazs Scheidler1-2/+26
2010-07-12net/ipv4: EXPORT_SYMBOL cleanupsEric Dumazet1-4/+0
2010-05-15net: reserve ports for applications using fixed port numbersAmerigo Wang1-0/+2
2009-12-08tcp: Fix a connect() race with timewait socketsEric Dumazet1-0/+2
2009-12-08tcp: Fix a connect() race with timewait socketsEric Dumazet1-6/+16
2009-12-03tcp: connect() race with timewait reuseEric Dumazet1-3/+7
2009-11-25net: use net_eq to compare netsOctavian Purdila1-1/+2
2009-10-18inet: rename some inet_sock fieldsEric Dumazet1-16/+18
2009-10-13tcp: replace ehash_size by ehash_maskEric Dumazet1-1/+1
2009-02-01net: move bsockets outside of read only beginning of struct inet_hashinfoEric Dumazet1-2/+3
2009-01-21inet: Allowing more than 64k connections and heavily optimize bind(0) time.Evgeniy Polyakov1-1/+10
2008-11-24net: Make sure BHs are disabled in sock_prot_inuse_add()Eric Dumazet1-1/+1
2008-11-23net: Convert TCP/DCCP listening hash tables to use RCUEric Dumazet1-74/+74
2008-11-20net: convert TCP/DCCP ehash rwlocks to spinlocksEric Dumazet1-11/+10
2008-11-20net: listening_hash get a spinlock per bucketEric Dumazet1-55/+31
2008-11-16net: Convert TCP & DCCP hash tables to use RCU / hlist_nullsEric Dumazet1-23/+55
2008-11-12net: ib_net pointer should depends on CONFIG_NET_NSEric Dumazet1-3/+3
2008-07-25net: convert BUG_TRAP to generic WARN_ONIlpo Järvinen1-4/+4
2008-07-16mib: add net to NET_INC_STATS_BHPavel Emelyanov1-2/+2
2008-06-16inet: add struct net argument to inet_ehashfnPavel Emelyanov1-3/+3
2008-06-16inet: add struct net argument to inet_lhashfnPavel Emelyanov1-1/+1
2008-06-16inet: add struct net argument to inet_bhashfnPavel Emelyanov1-4/+7
2008-04-17[INET]: Uninline the __inet_inherit_port call.Pavel Emelyanov1-0/+16
2008-04-16[NETNS]: Add netns refcnt debug for inet bind buckets.Denis V. Lunev1-1/+2
2008-03-31[SOCK][NETNS]: Add a struct net argument to sock_prot_inuse_add and _get.Pavel Emelyanov1-4/+4
2008-03-26[NET] NETNS: Omit namespace comparision without CONFIG_NET_NS.YOSHIFUJI Hideaki1-2/+2
2008-03-26[NET] NETNS: Omit sock->sk_net without CONFIG_NET_NS.YOSHIFUJI Hideaki1-4/+4
2008-03-22[SOCK]: Add udp_hash member to struct proto.Pavel Emelyanov1-4/+4
2008-02-13[INET]: Unexport inet_listen_wlockAdrian Bunk1-2/+0
2008-02-13[INET]: Unexport __inet_hash_connectAdrian Bunk1-1/+0
2008-02-05[INET]: Fix accidentally broken inet(6)_hash_connect's port offset calculations.Pavel Emelyanov1-3/+3
2008-02-03[SOCK] proto: Add hashinfo member to struct protoArnaldo Carvalho de Melo1-10/+48
2008-01-31[NETNS]: Tcp-v4 sockets per-net lookup.Pavel Emelyanov1-10/+19
2008-01-31[NETNS]: Make bind buckets live in net namespaces.Pavel Emelyanov1-2/+6
2008-01-31[INET]: Consolidate inet(6)_hash_connect.Pavel Emelyanov1-11/+21
2008-01-28[NET]: prot_inuse cleanups and optimizationsEric Dumazet1-3/+3
2008-01-28[NET]: Add some acquires/releases sparse annotations.Eric Dumazet1-0/+1
2008-01-28[INET]: Uninline the __inet_lookup_established function.Pavel Emelyanov1-0/+38
2008-01-28[INET]: Uninline the __inet_hash function.Pavel Emelyanov1-2/+44
2007-11-07[INET]: Remove per bucket rwlock in tcp/dccp ehash table.Eric Dumazet1-3/+4
2007-10-18[INET]: Justification for local port range robustness.Anton Arapov1-1/+1
2007-10-10[INET]: local port range robustnessStephen Hemminger1-7/+6
2007-02-10[NET] IPV4: Fix whitespace errors.YOSHIFUJI Hideaki1-52/+52
2007-02-08[NET]: change layout of ehash tableEric Dumazet1-1/+1
2006-12-07[PATCH] slab: remove kmem_cache_tChristoph Lameter1-2/+2
2006-12-07[PATCH] slab: remove SLAB_ATOMICChristoph Lameter1-1/+1
2006-09-28[IPV4]: annotate inet_lookup() and friendsAl Viro1-5/+5
2006-09-28[IPV4]: INET_MATCH() annotationsAl Viro1-1/+1