diff options
Diffstat (limited to 'include/uapi/linux/openvswitch.h')
-rw-r--r-- | include/uapi/linux/openvswitch.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/include/uapi/linux/openvswitch.h b/include/uapi/linux/openvswitch.h index a74d375b439b..d120f9fe0017 100644 --- a/include/uapi/linux/openvswitch.h +++ b/include/uapi/linux/openvswitch.h | |||
@@ -63,15 +63,18 @@ enum ovs_datapath_cmd { | |||
63 | * not be sent. | 63 | * not be sent. |
64 | * @OVS_DP_ATTR_STATS: Statistics about packets that have passed through the | 64 | * @OVS_DP_ATTR_STATS: Statistics about packets that have passed through the |
65 | * datapath. Always present in notifications. | 65 | * datapath. Always present in notifications. |
66 | * @OVS_DP_ATTR_MEGAFLOW_STATS: Statistics about mega flow masks usage for the | ||
67 | * datapath. Always present in notifications. | ||
66 | * | 68 | * |
67 | * These attributes follow the &struct ovs_header within the Generic Netlink | 69 | * These attributes follow the &struct ovs_header within the Generic Netlink |
68 | * payload for %OVS_DP_* commands. | 70 | * payload for %OVS_DP_* commands. |
69 | */ | 71 | */ |
70 | enum ovs_datapath_attr { | 72 | enum ovs_datapath_attr { |
71 | OVS_DP_ATTR_UNSPEC, | 73 | OVS_DP_ATTR_UNSPEC, |
72 | OVS_DP_ATTR_NAME, /* name of dp_ifindex netdev */ | 74 | OVS_DP_ATTR_NAME, /* name of dp_ifindex netdev */ |
73 | OVS_DP_ATTR_UPCALL_PID, /* Netlink PID to receive upcalls */ | 75 | OVS_DP_ATTR_UPCALL_PID, /* Netlink PID to receive upcalls */ |
74 | OVS_DP_ATTR_STATS, /* struct ovs_dp_stats */ | 76 | OVS_DP_ATTR_STATS, /* struct ovs_dp_stats */ |
77 | OVS_DP_ATTR_MEGAFLOW_STATS, /* struct ovs_dp_megaflow_stats */ | ||
75 | __OVS_DP_ATTR_MAX | 78 | __OVS_DP_ATTR_MAX |
76 | }; | 79 | }; |
77 | 80 | ||
@@ -84,6 +87,14 @@ struct ovs_dp_stats { | |||
84 | __u64 n_flows; /* Number of flows present */ | 87 | __u64 n_flows; /* Number of flows present */ |
85 | }; | 88 | }; |
86 | 89 | ||
90 | struct ovs_dp_megaflow_stats { | ||
91 | __u64 n_mask_hit; /* Number of masks used for flow lookups. */ | ||
92 | __u32 n_masks; /* Number of masks for the datapath. */ | ||
93 | __u32 pad0; /* Pad for future expension. */ | ||
94 | __u64 pad1; /* Pad for future expension. */ | ||
95 | __u64 pad2; /* Pad for future expension. */ | ||
96 | }; | ||
97 | |||
87 | struct ovs_vport_stats { | 98 | struct ovs_vport_stats { |
88 | __u64 rx_packets; /* total packets received */ | 99 | __u64 rx_packets; /* total packets received */ |
89 | __u64 tx_packets; /* total packets transmitted */ | 100 | __u64 tx_packets; /* total packets transmitted */ |
@@ -260,6 +271,7 @@ enum ovs_key_attr { | |||
260 | OVS_KEY_ATTR_SKB_MARK, /* u32 skb mark */ | 271 | OVS_KEY_ATTR_SKB_MARK, /* u32 skb mark */ |
261 | OVS_KEY_ATTR_TUNNEL, /* Nested set of ovs_tunnel attributes */ | 272 | OVS_KEY_ATTR_TUNNEL, /* Nested set of ovs_tunnel attributes */ |
262 | OVS_KEY_ATTR_SCTP, /* struct ovs_key_sctp */ | 273 | OVS_KEY_ATTR_SCTP, /* struct ovs_key_sctp */ |
274 | OVS_KEY_ATTR_TCP_FLAGS, /* be16 TCP flags. */ | ||
263 | 275 | ||
264 | #ifdef __KERNEL__ | 276 | #ifdef __KERNEL__ |
265 | OVS_KEY_ATTR_IPV4_TUNNEL, /* struct ovs_key_ipv4_tunnel */ | 277 | OVS_KEY_ATTR_IPV4_TUNNEL, /* struct ovs_key_ipv4_tunnel */ |