freebsd-dev/sys/netinet
Robert Watson 5df3e83946 Add soreceive_dgram(9), an optimized socket receive function for use by
datagram-only protocols, such as UDP.  This version removes use of
sblock(), which is not required due to an inability to interlace data
improperly with datagrams, as well as avoiding some of the larger loops
and state management that don't apply on datagram sockets.

This is experimental code, so hook it up only for UDPv4 for testing; if
there are problems we may need to revise it or turn it off by default,
but it offers *significant* performance improvements for threaded UDP
applications such as BIND9, nsd, and memcached using UDP.

Tested by:	kris, ps
2008-07-02 23:23:27 +00:00
..
libalias Partially revert previous commit. DeleteLink() does not deletes permanent 2008-06-22 11:39:42 +00:00
accf_data.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
accf_http.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
icmp6.h - Disabled responding to NI queries from a global address by default as 2007-05-17 21:20:24 +00:00
icmp_var.h Attempt to improve feature parity between UDPv4 and UDPv6 by merging 2007-07-19 22:34:25 +00:00
if_atm.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
if_atm.h
if_ether.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
if_ether.h Don't duplicate the whole of arpresolve to arpresolve 2 for the sake 2007-12-31 23:48:06 +00:00
igmp_var.h Import rewrite of IPv4 socket multicast layer to support source-specific 2007-06-12 16:24:56 +00:00
igmp.c Move towards more explicit support for various network protocol stacks 2007-10-28 15:55:23 +00:00
igmp.h Stub out imported IGMPv3 definitions which clash with those of 2007-06-15 18:59:10 +00:00
in_cksum.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
in_gif.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
in_gif.h
in_mcast.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
in_pcb.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
in_pcb.h Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
in_proto.c This patch provides the back end support for equal-cost multi-path 2008-04-13 05:45:14 +00:00
in_rmx.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
in_systm.h
in_var.h Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
in.c In case of interface initialization failure remove struct in_ifaddr* from 2008-06-24 13:58:28 +00:00
in.h Clean up the code that checks the types of address so that it is 2008-04-17 12:50:42 +00:00
ip6.h move RFC3542 related definitions into ip6.h. 2005-07-20 10:30:52 +00:00
ip_carp.c Sort IP addresses before hashing them for the signature. Otherwise carp is 2008-06-02 18:58:07 +00:00
ip_carp.h Make sure that carp_header is 36 bytes long 2006-12-01 18:37:41 +00:00
ip_divert.c Read lock, rather than write lock, the inpcb when transmitting with or 2008-04-21 12:03:59 +00:00
ip_divert.h
ip_dummynet.c Consistently check IPFW and DUMMYNET privileges in the configuration 2008-05-22 08:10:31 +00:00
ip_dummynet.h 1) dummynet_io() declaration has changed. 2007-11-06 23:01:42 +00:00
ip_ecn.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
ip_ecn.h
ip_encap.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
ip_encap.h
ip_fastfwd.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_fw2.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_fw_nat.c PKT_ALIAS_FOUND_HEADER_FRAGMENT result is not an error, so pass that packet. 2008-06-01 12:29:23 +00:00
ip_fw_pfil.c Raise a bit ipfw kld priority. 2008-03-03 10:12:46 +00:00
ip_fw.h Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_gre.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
ip_gre.h Fix stack corruptions on amd64. 2006-01-21 10:44:34 +00:00
ip_icmp.c Fix the loopback interface. Cleaning up some code with new macros 2008-05-12 02:44:53 +00:00
ip_icmp.h
ip_id.c Replace the random IP ID generation code we 2008-02-06 15:40:30 +00:00
ip_input.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_ipsec.c Take the route mtu into account, if available, when sending an 2008-04-09 05:17:18 +00:00
ip_ipsec.h Take the route mtu into account, if available, when sending an 2008-04-09 05:17:18 +00:00
ip_mroute.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_mroute.h Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_options.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_options.h Normalize style a bit: reduce pseudo-randomness of comment layout and 2007-05-11 10:48:30 +00:00
ip_output.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip_var.h Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
ip.h Remove IPTOS_CE and IPTOS_ECT constants. They were defined in RFC 2481 2007-10-19 12:46:15 +00:00
ipprotosw.h
pim_var.h Remove public declarations of variables that were forgotten when they were 2005-08-10 07:10:02 +00:00
pim.h
raw_ip.c Consistently check IPFW and DUMMYNET privileges in the configuration 2008-05-22 08:10:31 +00:00
sctp_asconf.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_asconf.h - Adds support for the multi-asconf (From Kozuka-san) 2008-05-20 13:47:46 +00:00
sctp_auth.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_auth.h - fix send_failed notification contents 2007-06-09 13:46:57 +00:00
sctp_bsd_addr.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_bsd_addr.h - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_cc_functions.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_cc_functions.h - Added some comments to tell where the htcp 2007-09-10 17:06:25 +00:00
sctp_constants.h - Adds support for the multi-asconf (From Kozuka-san) 2008-05-20 13:47:46 +00:00
sctp_crc32.c - Copyright change, cisco's silly tool wants it to say: 2007-05-08 17:01:12 +00:00
sctp_crc32.h - Copyright change, cisco's silly tool wants it to say: 2007-05-08 17:01:12 +00:00
sctp_header.h - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_indata.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_indata.h - Fix stream reset so it limits the number of streams that can be listed 2007-06-22 13:50:56 +00:00
sctp_input.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_input.h - Adds support for the multi-asconf (From Kozuka-san) 2008-05-20 13:47:46 +00:00
sctp_lock_bsd.h - Fixes foobar on my part. Some missing virtualization macros from 2008-06-14 13:24:49 +00:00
sctp_os_bsd.h - Fixes foobar on my part. Some missing virtualization macros from 2008-06-14 13:24:49 +00:00
sctp_os.h - Fix address add handling to clear cached routes and source addresses 2007-08-24 00:53:53 +00:00
sctp_output.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_output.h - Adds support for the multi-asconf (From Kozuka-san) 2008-05-20 13:47:46 +00:00
sctp_pcb.c More prep for Vimage: 2008-06-15 12:31:23 +00:00
sctp_pcb.h More prep for Vimage: 2008-06-15 12:31:23 +00:00
sctp_peeloff.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_peeloff.h - Copyright change, cisco's silly tool wants it to say: 2007-05-08 17:01:12 +00:00
sctp_structs.h - Adds support for the multi-asconf (From Kozuka-san) 2008-05-20 13:47:46 +00:00
sctp_sysctl.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_sysctl.h - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_timer.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_timer.h - Incorrect error EAGAIN returned for invalid send on a locked 2007-09-13 10:36:43 +00:00
sctp_uio.h - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctp_usrreq.c More prep for Vimage: 2008-06-15 12:31:23 +00:00
sctp_var.h More prep for Vimage: 2008-06-15 12:31:23 +00:00
sctp.h - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctputil.c - Macro-izes the packed declaration in all headers. 2008-06-14 07:58:05 +00:00
sctputil.h - Adds support for the multi-asconf (From Kozuka-san) 2008-05-20 13:47:46 +00:00
tcp_debug.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
tcp_debug.h o Use a define for a buffer size. 2007-03-24 22:15:02 +00:00
tcp_fsm.h Make tcpstates[] static, and make sure TCPSTATES is defined before 2007-07-30 11:06:42 +00:00
tcp_hostcache.c Add FBSDID to all files in netinet so that people can more 2007-10-07 20:44:24 +00:00
tcp_input.c Add code to allow the system to handle multiple routing tables. 2008-05-09 23:03:00 +00:00
tcp_lro.c Add generic TCP LOR into netinet 2008-06-11 22:12:50 +00:00
tcp_lro.h Add generic TCP LOR into netinet 2008-06-11 22:12:50 +00:00
tcp_offload.c Remove extraneous debug statements. 2007-12-19 05:17:40 +00:00
tcp_offload.h move cxgb_lt2.[ch] from NIC to TOE 2008-04-19 03:22:43 +00:00
tcp_output.c Convert pcbinfo and inpcb mutexes to rwlocks, and modify macros to 2008-04-17 21:38:18 +00:00
tcp_reass.c Convert pcbinfo and inpcb mutexes to rwlocks, and modify macros to 2008-04-17 21:38:18 +00:00
tcp_sack.c Convert pcbinfo and inpcb mutexes to rwlocks, and modify macros to 2008-04-17 21:38:18 +00:00
tcp_seq.h Remove T/TCP RFC1644 Connection Count comparison macros. They are no longer 2006-06-18 14:24:12 +00:00
tcp_subr.c When allocating temporary storage to hold a TCP/IP packet header 2008-06-02 14:20:26 +00:00
tcp_syncache.c Change incorrect stale cookie detection in syncookie_lookup() that prematurely 2008-06-16 20:08:22 +00:00
tcp_syncache.h Add interface for tcp offload to syncache: 2007-12-12 20:35:59 +00:00
tcp_timer.c When allocating temporary storage to hold a TCP/IP packet header 2008-06-02 14:20:26 +00:00
tcp_timer.h Two changes: 2007-09-24 05:26:24 +00:00
tcp_timewait.c Convert pcbinfo and inpcb mutexes to rwlocks, and modify macros to 2008-04-17 21:38:18 +00:00
tcp_usrreq.c replace spaces added in last change with tabs 2008-05-05 23:13:27 +00:00
tcp_var.h Revert to rev. 1.161 - switch back to optimized TCP options ordering. 2008-04-20 18:36:59 +00:00
tcp.h add rcv_nxt, snd_nxt, and toe offload id to FreeBSD-specific 2008-05-05 20:13:31 +00:00
tcpip.h
toedev.h Update the toedev's connect interface to reflect the fact that the inpcb 2007-12-16 05:30:21 +00:00
udp_usrreq.c Add soreceive_dgram(9), an optimized socket receive function for use by 2008-07-02 23:23:27 +00:00
udp_var.h Further cleanup of UDPv4: 2007-07-10 09:30:46 +00:00
udp.h Gratuitous UDP restyling toward style(9) in 7.x. 2007-02-20 10:13:11 +00:00