aboutsummaryrefslogtreecommitdiffstats
path: root/net/openvswitch/datapath.h
diff options
context:
space:
mode:
authorPaolo Abeni <[email protected]>2016-02-26 09:45:39 +0000
committerDavid S. Miller <[email protected]>2016-03-01 20:54:30 +0000
commit3a927bc7cf9d0fbe8f4a8189dd5f8440228f64e7 (patch)
tree31a903a08d2f40e2c2026ef955be2d86bdecf777 /net/openvswitch/datapath.h
parentbridge: notify enslaved devices of headroom changes (diff)
downloadkernel-3a927bc7cf9d0fbe8f4a8189dd5f8440228f64e7.tar.gz
kernel-3a927bc7cf9d0fbe8f4a8189dd5f8440228f64e7.zip
ovs: propagate per dp max headroom to all vports
This patch implements bookkeeping support to compute the maximum headroom for all the devices in each datapath. When said value changes, the underlying devs are notified via the ndo_set_rx_headroom method. This also increases the internal vports xmit performance. Signed-off-by: Paolo Abeni <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/openvswitch/datapath.h')
-rw-r--r--net/openvswitch/datapath.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/openvswitch/datapath.h b/net/openvswitch/datapath.h
index 67bdecd9fdc1..427e39a045cf 100644
--- a/net/openvswitch/datapath.h
+++ b/net/openvswitch/datapath.h
@@ -68,6 +68,8 @@ struct dp_stats_percpu {
* ovs_mutex and RCU.
* @stats_percpu: Per-CPU datapath statistics.
* @net: Reference to net namespace.
+ * @max_headroom: the maximum headroom of all vports in this datapath; it will
+ * be used by all the internal vports in this dp.
*
* Context: See the comment on locking at the top of datapath.c for additional
* locking information.
@@ -89,6 +91,8 @@ struct datapath {
possible_net_t net;
u32 user_features;
+
+ u32 max_headroom;
};
/**