Date: Mon, 15 Sep 2008 20:46:32 +0000 (UTC) From: Robert Watson <rwatson@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern uipc_socket.c src/sys/netinet udp_usrreq.c src/sys/netinet6 udp6_usrreq.c src/sys/sys socketvar.h Message-ID: <200809152047.m8FKleWk055199@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
rwatson 2008-09-15 20:46:32 UTC FreeBSD src repository Modified files: (Branch: RELENG_7) sys/kern uipc_socket.c sys/netinet udp_usrreq.c sys/netinet6 udp6_usrreq.c sys/sys socketvar.h Log: SVN rev 183051 on 2008-09-15 20:46:32Z by rwatson Merge r180198, r180211, r180365, r182682 from head to stable/7: 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 Update copyright date in light of soreceive_dgram(9). Use soreceive_dgram() and sosend_dgram() with UDPv6, as we do with UDPv4. Tested by: ps Remove XXXRW in soreceive_dgram that proves unnecessary. Remove unused orig_resid variable in soreceive_dgram. Submitted by: alfred Note: in the MFC, we do enable sosend_dgram for UDPv6 by default (it was already used for UDPv4), but use of soreceive_dgram for both UDPv4 and UDPv6 is controlled by a new loader tunable, net.inet.udp.soreceive_dgram_enabled as soreceive_dgram has less testing exposure than sosend_dgram. We may wish to change the default (and eliminate the tunable) in 7.2. MFC requested by: gnn, kris, ps Approved by: re (kib) Revision Changes Path 1.302.2.6 +230 -1 src/sys/kern/uipc_socket.c 1.218.2.5 +14 -0 src/sys/netinet/udp_usrreq.c 1.81.2.7 +1 -0 src/sys/netinet6/udp6_usrreq.c 1.158.2.5 +3 -0 src/sys/sys/socketvar.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200809152047.m8FKleWk055199>