summaryrefslogtreecommitdiffstats
path: root/sys/net/if_lagg.h
diff options
context:
space:
mode:
authorscottl <scottl@FreeBSD.org>2013-12-30 01:32:17 +0000
committerscottl <scottl@FreeBSD.org>2013-12-30 01:32:17 +0000
commit4ba8fc2916269d5e26598123350515d24ab4f5a3 (patch)
treee3b45581296a71b9605b1a8b05a56cbd589ece05 /sys/net/if_lagg.h
parent9c7ced984d52ee1262f7ac5d268a4052d0fc6e1c (diff)
downloadFreeBSD-src-4ba8fc2916269d5e26598123350515d24ab4f5a3.zip
FreeBSD-src-4ba8fc2916269d5e26598123350515d24ab4f5a3.tar.gz
Multi-queue NIC drivers and multi-port lagg tend to use the same lower
bits of the flowid as each other, resulting in a poor distribution of packets among queues in certain cases. Work around this by adding a set of sysctls for controlling a bit-shift on the flowid when doing multi-port aggrigation in lagg and lacp. By default, lagg/lacp will now use bits 16 and higher instead of 0 and higher. Reviewed by: max Obtained from: Netflix MFC after: 3 days
Diffstat (limited to 'sys/net/if_lagg.h')
-rw-r--r--sys/net/if_lagg.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/net/if_lagg.h b/sys/net/if_lagg.h
index 0db8da8..e52f901 100644
--- a/sys/net/if_lagg.h
+++ b/sys/net/if_lagg.h
@@ -231,6 +231,7 @@ struct lagg_softc {
struct sysctl_ctx_list ctx; /* sysctl variables */
struct sysctl_oid *sc_oid; /* sysctl tree oid */
int use_flowid; /* use M_FLOWID */
+ int flowid_shift; /* shift the flowid */
};
struct lagg_port {
OpenPOWER on IntegriCloud