#define ODP_VPORT_ETHER_SET _IOW('O', 26, struct odp_vport_ether)
#define ODP_VPORT_MTU_GET _IOWR('O', 27, struct odp_vport_mtu)
#define ODP_VPORT_MTU_SET _IOW('O', 28, struct odp_vport_mtu)
+#define ODP_VPORT_STATS_SET _IOWR('O', 29, struct odp_vport_stats_req)
struct odp_stats {
/* Flows. */
#define ODPAT_SET_TP_SRC 11 /* TCP/UDP source port. */
#define ODPAT_SET_TP_DST 12 /* TCP/UDP destination port. */
#define ODPAT_SET_TUNNEL 13 /* Set the encapsulating tunnel ID. */
-#define ODPAT_N_ACTIONS 14
+#define ODPAT_SET_PRIORITY 14 /* Set skb->priority. */
+#define ODPAT_POP_PRIORITY 15 /* Restore original skb->priority. */
+#define ODPAT_N_ACTIONS 16
struct odp_action_output {
uint16_t type; /* ODPAT_OUTPUT. */
uint16_t reserved2;
};
+/* Action structure for ODPAT_SET_PRIORITY. */
+struct odp_action_priority {
+ uint16_t type; /* ODPAT_SET_PRIORITY. */
+ uint16_t reserved;
+ uint32_t priority; /* skb->priority value. */
+};
+
union odp_action {
uint16_t type;
struct odp_action_output output;
struct odp_action_nw_addr nw_addr;
struct odp_action_nw_tos nw_tos;
struct odp_action_tp_port tp_port;
+ struct odp_action_priority priority;
};
struct odp_execute {