aboutsummaryrefslogtreecommitdiff
path: root/datapath/flow.h
diff options
context:
space:
mode:
authorBen Pfaff <blp@nicira.com>2010-12-10 10:40:58 -0800
committerBen Pfaff <blp@nicira.com>2010-12-10 11:13:32 -0800
commitcdee00fd635d1e0f1eeb5d9c009daeb59abd4777 (patch)
tree49ef94d30bcb995fa1070c3aa770a9a515b26b0a /datapath/flow.h
parent7f8ca6459c37ede8faf13f730bcd4d9f05dfd13b (diff)
datapath: Replace "struct odp_action" by Netlink attributes.
In the medium term, we plan to migrate the datapath to use Netlink as its communication channel. In the short term, we need to be able to have actions with 64-bit arguments but "struct odp_action" only has room for 48 bits. So this patch shifts to variable-length arguments using Netlink attributes, which starts in on the Netlink transition and makes 64-bit arguments possible at the same time. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to 'datapath/flow.h')
-rw-r--r--datapath/flow.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/datapath/flow.h b/datapath/flow.h
index b1e80057..d58196e7 100644
--- a/datapath/flow.h
+++ b/datapath/flow.h
@@ -24,8 +24,8 @@ struct sk_buff;
struct sw_flow_actions {
struct rcu_head rcu;
- unsigned int n_actions;
- union odp_action actions[];
+ u32 actions_len;
+ struct nlattr actions[];
};
struct sw_flow {
@@ -67,7 +67,7 @@ struct sw_flow *flow_alloc(void);
void flow_deferred_free(struct sw_flow *);
void flow_free_tbl(struct tbl_node *);
-struct sw_flow_actions *flow_actions_alloc(size_t n_actions);
+struct sw_flow_actions *flow_actions_alloc(u32 actions_len);
void flow_deferred_free_acts(struct sw_flow_actions *);
void flow_hold(struct sw_flow *);