aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/udp_usrreq.c
diff options
context:
space:
mode:
authorRyan Stone <rstone@FreeBSD.org>2017-04-05 16:57:13 +0000
committerRyan Stone <rstone@FreeBSD.org>2017-04-05 16:57:13 +0000
commit4af540d197ad7098904f44593abef1da987be04f (patch)
tree34e109520c15e5c92b1d430cc1498c07a799b35b /sys/netinet/udp_usrreq.c
parent65b9599a76d4eefafc9b095c026e08e87da95242 (diff)
downloadsrc-4af540d197ad7098904f44593abef1da987be04f.tar.gz
src-4af540d197ad7098904f44593abef1da987be04f.zip
Revert the optimization from r304436
r304436 attempted to optimize the handling of incoming UDP packet by only making an expensive call to in_broadcast() if the mbuf was marked as an broadcast packet. Unfortunately, this cannot work in the case of point-to- point L2 protocols like PPP, which have no notion of "broadcast". The optimization has been disabled for several months now with no progress towards fixing it, so it needs to go.
Notes
Notes: svn path=/head/; revision=316527
Diffstat (limited to 'sys/netinet/udp_usrreq.c')
-rw-r--r--sys/netinet/udp_usrreq.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c
index eaeb0b03152d..f7507dc13811 100644
--- a/sys/netinet/udp_usrreq.c
+++ b/sys/netinet/udp_usrreq.c
@@ -123,12 +123,6 @@ SYSCTL_INT(_net_inet_udp, OID_AUTO, blackhole, CTLFLAG_VNET | CTLFLAG_RW,
&VNET_NAME(udp_blackhole), 0,
"Do not send port unreachables for refused connects");
-static VNET_DEFINE(int, udp_require_l2_bcast) = 0;
-#define V_udp_require_l2_bcast VNET(udp_require_l2_bcast)
-SYSCTL_INT(_net_inet_udp, OID_AUTO, require_l2_bcast, CTLFLAG_VNET | CTLFLAG_RW,
- &VNET_NAME(udp_require_l2_bcast), 0,
- "Only treat packets sent to an L2 broadcast address as broadcast packets");
-
u_long udp_sendspace = 9216; /* really max datagram size */
SYSCTL_ULONG(_net_inet_udp, UDPCTL_MAXDGRAM, maxdgram, CTLFLAG_RW,
&udp_sendspace, 0, "Maximum outgoing UDP datagram size");
@@ -529,8 +523,7 @@ udp_input(struct mbuf **mp, int *offp, int proto)
pcbinfo = udp_get_inpcbinfo(proto);
if (IN_MULTICAST(ntohl(ip->ip_dst.s_addr)) ||
- ((!V_udp_require_l2_bcast || m->m_flags & M_BCAST) &&
- in_broadcast(ip->ip_dst, ifp))) {
+ in_broadcast(ip->ip_dst, ifp)) {
struct inpcb *last;
struct inpcbhead *pcblist;
struct ip_moptions *imo;