History

Merge branch 'net_next_ovs' of git://git.kernel.org/pub/scm/linux/kernel/git/pshelar/openvswitch

Pravin B Shelar says: ==================== Open vSwitch Following batch of patches brings feature parity between upstream ovs and out of tree ovs module. Two features are added, first adds support to export egress tunnel information for a packet. This is used to improve visibility in network traffic. Second feature allows userspace vswitchd process to probe ovs module features. Other patches are optimization and code cleanup. ====================

David S. Miller committed 12 years ago

Commit 4083c802 parents a2ae600 05da58916 files · +664 −313Browse files

Showing the changes to include/uapi/linux (1 of 16 files). Show all

Unified · Split

include/uapi/linux/openvswitch.h+15−0
@@ -157,6 +157,11 @@ enum ovs_packet_cmd { · 156 unmodified lines
157157 * notification if the %OVS_ACTION_ATTR_USERSPACE action specified an
158158 * %OVS_USERSPACE_ATTR_USERDATA attribute, with the same length and content
159159 * specified there.
160+ * @OVS_PACKET_ATTR_EGRESS_TUN_KEY: Present for an %OVS_PACKET_CMD_ACTION
161+ * notification if the %OVS_ACTION_ATTR_USERSPACE action specified an
162+ * %OVS_USERSPACE_ATTR_EGRESS_TUN_PORT attribute, which is sent only if the
163+ * output port is actually a tunnel port. Contains the output tunnel key
164+ * extracted from the packet as nested %OVS_TUNNEL_KEY_ATTR_* attributes.
160165 *
161166 * These attributes follow the &struct ovs_header within the Generic Netlink
162167 * payload for %OVS_PACKET_* commands.
@@ -167,6 +172,8 @@ enum ovs_packet_attr { · 4 unmodified lines
167172 OVS_PACKET_ATTR_KEY, /* Nested OVS_KEY_ATTR_* attributes. */
168173 OVS_PACKET_ATTR_ACTIONS, /* Nested OVS_ACTION_ATTR_* attributes. */
169174 OVS_PACKET_ATTR_USERDATA, /* OVS_ACTION_ATTR_USERSPACE arg. */
175+ OVS_PACKET_ATTR_EGRESS_TUN_KEY, /* Nested OVS_TUNNEL_KEY_ATTR_*
176+ attributes. */
170177 __OVS_PACKET_ATTR_MAX
171178 };
172179
@@ -315,6 +322,8 @@ enum ovs_tunnel_key_attr { · 142 unmodified lines
315322 OVS_TUNNEL_KEY_ATTR_CSUM, /* No argument. CSUM packet. */
316323 OVS_TUNNEL_KEY_ATTR_OAM, /* No argument. OAM frame. */
317324 OVS_TUNNEL_KEY_ATTR_GENEVE_OPTS, /* Array of Geneve options. */
325+ OVS_TUNNEL_KEY_ATTR_TP_SRC, /* be16 src Transport Port. */
326+ OVS_TUNNEL_KEY_ATTR_TP_DST, /* be16 dst Transport Port. */
318327 __OVS_TUNNEL_KEY_ATTR_MAX
319328 };
320329
@@ -448,6 +457,8 @@ enum ovs_flow_attr { · 127 unmodified lines
448457 OVS_FLOW_ATTR_USED, /* u64 msecs last used in monotonic time. */
449458 OVS_FLOW_ATTR_CLEAR, /* Flag to clear stats, tcp_flags, used. */
450459 OVS_FLOW_ATTR_MASK, /* Sequence of OVS_KEY_ATTR_* attributes. */
460+ OVS_FLOW_ATTR_PROBE, /* Flow operation is a feature probe, error
461+ * logging should be suppressed. */
451462 __OVS_FLOW_ATTR_MAX
452463 };
453464
@@ -480,11 +491,15 @@ enum ovs_sample_attr { · 26 unmodified lines
480491 * message should be sent. Required.
481492 * @OVS_USERSPACE_ATTR_USERDATA: If present, its variable-length argument is
482493 * copied to the %OVS_PACKET_CMD_ACTION message as %OVS_PACKET_ATTR_USERDATA.
494+ * @OVS_USERSPACE_ATTR_EGRESS_TUN_PORT: If present, u32 output port to get
495+ * tunnel info.
483496 */
484497 enum ovs_userspace_attr {
485498 OVS_USERSPACE_ATTR_UNSPEC,
486499 OVS_USERSPACE_ATTR_PID, /* u32 Netlink PID to receive upcalls. */
487500 OVS_USERSPACE_ATTR_USERDATA, /* Optional user-specified cookie. */
501+ OVS_USERSPACE_ATTR_EGRESS_TUN_PORT, /* Optional, u32 output port
502+ * to get tunnel info. */
488503 __OVS_USERSPACE_ATTR_MAX
489504 };
490505