1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-26 11:47:31 +00:00
freebsd/sys/netinet
Alexander V. Chernikov 65ff3638df Merge helper fib* functions used for basic lookups.
Vast majority of rtalloc(9) users require only basic info from
route table (e.g. "does the rtentry interface match with the interface
  I have?". "what is the MTU?", "Give me the IPv4 source address to use",
  etc..).
Instead of hand-rolling lookups, checking if rtentry is up, valid,
  dealing with IPv6 mtu, finding "address" ifp (almost never done right),
  provide easy-to-use API hiding all the complexity and returning the
  needed info into small on-stack structure.

This change also helps hiding route subsystem internals (locking, direct
  rtentry accesses).
Additionaly, using this API improves lookup performance since rtentry is not
  locked.
(This is safe, since all the rtentry changes happens under both radix WLOCK
  and rtentry WLOCK).

Sponsored by:	Yandex LLC
2015-12-08 10:50:03 +00:00
..
cc
khelp
libalias
accf_data.c
accf_dns.c
accf_http.c
cc.h
icmp6.h
icmp_var.h
if_atm.c
if_atm.h
if_ether.c Remove LLE read lock from IPv4 fast path. 2015-12-05 09:50:37 +00:00
if_ether.h Decompose arp_ifinit() into arp_add_ifa_lle() and arp_announce_ifaddr(). 2015-11-09 10:35:33 +00:00
igmp_var.h
igmp.c In the same way fix the problem described in r291578 for IGMPv3. 2015-12-01 11:24:30 +00:00
igmp.h
in_cksum.c
in_debug.c
in_fib.c Merge helper fib* functions used for basic lookups. 2015-12-08 10:50:03 +00:00
in_fib.h Merge helper fib* functions used for basic lookups. 2015-12-08 10:50:03 +00:00
in_gif.c Merge helper fib* functions used for basic lookups. 2015-12-08 10:50:03 +00:00
in_kdtrace.c dd DTrace probe points, translators and a corresponding script 2015-09-13 15:50:55 +00:00
in_kdtrace.h dd DTrace probe points, translators and a corresponding script 2015-09-13 15:50:55 +00:00
in_mcast.c in_getmulti: Fix recursion on if_addr_lock on malloc failure 2015-11-18 23:53:13 +00:00
in_pcb.c The r241129 description was wrong that the scenario is possible 2015-11-25 14:45:43 +00:00
in_pcb.h Use Jenkins hash for TCP syncache. 2015-09-05 10:15:19 +00:00
in_pcbgroup.c
in_proto.c
in_rmx.c Remove in_setifarnh definition. 2015-11-30 06:02:35 +00:00
in_rss.c Rename rss_soft_m2cpuid() -> rss_soft_m2cpuid_v4() in preparation for 2015-08-29 06:58:30 +00:00
in_rss.h Rename rss_soft_m2cpuid() -> rss_soft_m2cpuid_v4() in preparation for 2015-08-29 06:58:30 +00:00
in_systm.h
in_var.h Replace the fastforward path with tryforward which does not require a 2015-11-05 07:26:32 +00:00
in.c Remove LLE read lock from IPv4 fast path. 2015-12-05 09:50:37 +00:00
in.h
ip6.h
ip_carp.c Revert r290403 2015-11-13 23:14:39 +00:00
ip_carp.h
ip_divert.c
ip_divert.h
ip_dummynet.h
ip_ecn.c
ip_ecn.h Remove unneded #include "opt_inet.h". 2015-07-31 09:02:28 +00:00
ip_encap.c Fix possible use after free in encap[46]_input(). 2015-06-18 18:28:38 +00:00
ip_encap.h
ip_fastfwd.c Replace the fastforward path with tryforward which does not require a 2015-11-05 07:26:32 +00:00
ip_fw.h Implement ipfw internal olist command to list named objects. 2015-11-03 10:21:53 +00:00
ip_gre.c
ip_icmp.c Convert in_ifaddr_lock and in6_ifaddr_lock to rmlock. 2015-07-29 08:12:05 +00:00
ip_icmp.h
ip_id.c
ip_input.c Overhaul if_enc(4) and make it loadable in run-time. 2015-11-25 07:31:59 +00:00
ip_ipsec.c Set the proper direction to check for policies in this one case. 2015-10-29 21:26:32 +00:00
ip_ipsec.h
ip_mroute.c
ip_mroute.h
ip_options.c Merge helper fib* functions used for basic lookups. 2015-12-08 10:50:03 +00:00
ip_options.h
ip_output.c Simplify ip[6] simploop: 2015-08-08 15:58:35 +00:00
ip_reass.c
ip_var.h fix a typo in a comment 2015-07-18 15:28:32 +00:00
ip.h Since the IETF has redefined the meaning of the tos field to accommodate 2015-07-18 06:48:30 +00:00
pim_var.h
pim.h
raw_ip.c Convert in_ifaddr_lock and in6_ifaddr_lock to rmlock. 2015-07-29 08:12:05 +00:00
sctp_asconf.c Provide consistent error causes whenever an ABORT chunk is sent. 2015-07-27 22:35:54 +00:00
sctp_asconf.h
sctp_auth.c Use __func__ instead of __FUNCTION__. 2015-10-19 11:17:54 +00:00
sctp_auth.h
sctp_bsd_addr.c
sctp_bsd_addr.h
sctp_cc_functions.c Fix and cleanup the debug information. This has no user-visible changes. 2015-05-28 16:00:23 +00:00
sctp_constants.h Ensure that ERROR chunks are always padded by implementing this 2015-09-11 13:54:33 +00:00
sctp_crc32.c
sctp_crc32.h
sctp_dtrace_declare.h
sctp_dtrace_define.h
sctp_header.h Cleanup the handling of error causes for ERROR chunks. This fixes 2015-09-12 17:08:51 +00:00
sctp_indata.c Ensure that outgoing streams get reset when they run dry. 2015-12-03 15:19:29 +00:00
sctp_indata.h Don't take the port numbers for packets containing ABORT chunks from 2015-08-02 16:07:30 +00:00
sctp_input.c Fix the allocation of outgoing streams: 2015-12-06 16:17:57 +00:00
sctp_input.h Add FIB support for SCTP. 2015-06-17 15:20:14 +00:00
sctp_lock_bsd.h
sctp_os_bsd.h Move including netinet/icmp6.h around to avoid a problem when including 2015-07-25 18:26:09 +00:00
sctp_os.h
sctp_output.c Fix the allocation of outgoing streams: 2015-12-06 16:17:57 +00:00
sctp_output.h Fix an issue with MAC OS locking and also optimize the case 2015-07-24 14:09:03 +00:00
sctp_pcb.c Fix the allocation of outgoing streams: 2015-12-06 16:17:57 +00:00
sctp_pcb.h Fix the allocation of outgoing streams: 2015-12-06 16:17:57 +00:00
sctp_peeloff.c
sctp_peeloff.h
sctp_ss_functions.c
sctp_structs.h Fix several problems with Stream Reset. 2015-07-22 11:30:37 +00:00
sctp_syscalls.c Fix two KTRACE related bugs. 2015-06-19 21:55:12 +00:00
sctp_sysctl.c Fix the exporting of SCTP association states to userland. Without this, 2015-08-29 09:14:32 +00:00
sctp_sysctl.h Remove redundant 'man page' 2015-09-15 21:16:45 +00:00
sctp_timer.c Ensure that outgoing streams get reset when they run dry. 2015-12-03 15:19:29 +00:00
sctp_timer.h
sctp_uio.h The field sinfo_timetolive should have been sinfo_pr_value. 2015-11-06 14:00:26 +00:00
sctp_usrreq.c Fix the allocation of outgoing streams: 2015-12-06 16:17:57 +00:00
sctp_var.h Stop the heartbeat timer when removing a net. 2015-06-14 17:48:44 +00:00
sctp.h Cleanup the handling of error causes for ERROR chunks. This fixes 2015-09-12 17:08:51 +00:00
sctputil.c Fix the allocation of outgoing streams: 2015-12-06 16:17:57 +00:00
sctputil.h Fix the allocation of outgoing streams: 2015-12-06 16:17:57 +00:00
siftr.c
tcp_debug.c
tcp_debug.h
tcp_fsm.h
tcp_hostcache.c
tcp_hostcache.h
tcp_input.c Improve the sysctl node name. 2015-11-05 02:09:48 +00:00
tcp_lro.c Fix leak in tcp_lro_rx. Simply clearing M_PKTHDR isn't enough, any tags 2015-06-30 17:19:58 +00:00
tcp_lro.h
tcp_offload.c
tcp_offload.h
tcp_output.c There are times when it would be really nice to have a record of the last few 2015-10-14 00:35:37 +00:00
tcp_pcap.c Hopefully also unbreak VIMAGE kernels replacing the &V_... with 2015-10-15 01:44:32 +00:00
tcp_pcap.h There are times when it would be really nice to have a record of the last few 2015-10-14 00:35:37 +00:00
tcp_reass.c Eliminate nd6_nud_hint() and its TCP bindings. 2015-09-27 05:29:34 +00:00
tcp_sack.c Calculate the correct amount of bytes that are in-flight for a connection as 2015-10-28 22:57:51 +00:00
tcp_seq.h
tcp_subr.c Turning on IPSEC used to introduce a slight amount of performance 2015-10-27 00:42:15 +00:00
tcp_syncache.c Use Jenkins hash for TCP syncache. 2015-09-05 10:15:19 +00:00
tcp_syncache.h Use Jenkins hash for TCP syncache. 2015-09-05 10:15:19 +00:00
tcp_timer.c This fixes several places where callout_stops return is examined. The 2015-11-13 22:51:35 +00:00
tcp_timer.h Put r284245 back in place: If at first this fix was seen as a temporary 2015-08-30 13:44:39 +00:00
tcp_timewait.c Decompose TCP INP_INFO lock to increase short-lived TCP connections scalability: 2015-08-03 12:13:54 +00:00
tcp_usrreq.c There are times when it would be really nice to have a record of the last few 2015-10-14 00:35:37 +00:00
tcp_var.h Calculate the correct amount of bytes that are in-flight for a connection as 2015-10-28 22:57:51 +00:00
tcp.h There are times when it would be really nice to have a record of the last few 2015-10-14 00:35:37 +00:00
tcpip.h
toecore.c Replace toe_nd6_resolve() with nd6_resolve(). 2015-09-22 19:05:44 +00:00
toecore.h
udp_usrreq.c get_inpcbinfo() and get_pcblist() are UDP local functions and 2015-08-27 15:27:41 +00:00
udp_var.h get_inpcbinfo() and get_pcblist() are UDP local functions and 2015-08-27 15:27:41 +00:00
udp.h
udplite.h