2017-08-16 7:35 GMT+08:00 Pravin Shelar <pshe...@ovn.org>: [...] >> diff --git a/net/openvswitch/actions.c b/net/openvswitch/actions.c >> index e4610676299b..f849ef52853f 100644 >> --- a/net/openvswitch/actions.c >> +++ b/net/openvswitch/actions.c >> @@ -921,6 +921,7 @@ static int output_userspace(struct datapath *dp, struct >> sk_buff *skb, >> /* Include actions. */ >> upcall.actions = actions; >> upcall.actions_len = actions_len; >> + upcall.actions_attrlen = OVS_CB(skb)->acts_origlen; > OVS_CB acts_origlen should be accessible in upcall_msg_size (), is > there reason to add this member to struct dp_upcall_info?
Hmm... this means we should add an extra parameter to the upcall_msg_size() function, i.e.: static size_t upcall_msg_size(const struct dp_upcall_info *upcall_info, - unsigned int hdrlen) + unsigned int hdrlen, int actions_attrlen) So which one do you prefer? If the latter, I can send V3.