svn commit: r277077 - head/sys/netinet
Gleb Smirnoff
glebius at FreeBSD.org
Mon Jan 12 18:06:24 UTC 2015
Author: glebius
Date: Mon Jan 12 18:06:22 2015
New Revision: 277077
URL: https://svnweb.freebsd.org/changeset/base/277077
Log:
Do not go one layer down to check ifqueue length. First, not all drivers
use ifqueue at all. Second, there is no point in this lockless check.
Either positive or negative result of the check could be incorrect after
a tick.
Reviewed by: tuexen
Sponsored by: Nginx, Inc.
Modified:
head/sys/netinet/sctp_output.c
Modified: head/sys/netinet/sctp_output.c
==============================================================================
--- head/sys/netinet/sctp_output.c Mon Jan 12 16:18:34 2015 (r277076)
+++ head/sys/netinet/sctp_output.c Mon Jan 12 18:06:22 2015 (r277077)
@@ -7958,22 +7958,6 @@ again_one_more_time:
} else {
skip_data_for_this_net = 0;
}
- if ((net->ro.ro_rt) && (net->ro.ro_rt->rt_ifp)) {
- /*
- * if we have a route and an ifp check to see if we
- * have room to send to this guy
- */
- struct ifnet *ifp;
-
- ifp = net->ro.ro_rt->rt_ifp;
- if ((ifp->if_snd.ifq_len + 2) >= ifp->if_snd.ifq_maxlen) {
- SCTP_STAT_INCR(sctps_ifnomemqueued);
- if (SCTP_BASE_SYSCTL(sctp_logging_level) & SCTP_LOG_MAXBURST_ENABLE) {
- sctp_log_maxburst(stcb, net, ifp->if_snd.ifq_len, ifp->if_snd.ifq_maxlen, SCTP_MAX_IFP_APPLIED);
- }
- continue;
- }
- }
switch (((struct sockaddr *)&net->ro._l_addr)->sa_family) {
#ifdef INET
case AF_INET:
More information about the svn-src-head
mailing list