netdev-offload-tc: Fix tc conntrack force commit support.
tc was not setting the OVS_CT_ATTR_FORCE_COMMIT flag when a forced
commit was requested. This patch will fix this.
Fixes: ("netdev-offload-tc: Add conntrack support")
Acked-by: Roi Dayan
Tested-by: Simon Horman
@@ -888,8 +888,12 @@ parse_tc_flower_to_actions__(struct tc_flower *flower, struct ofpbuf *buf,
ct_offset = nl_msg_start_nested(buf, OVS_ACTION_ATTR_CT);
if (action->ct.commit) {
+ if (action->ct.force) {
+ nl_msg_put_flag(buf, OVS_CT_ATTR_FORCE_COMMIT);
+ } else {
nl_msg_put_flag(buf, OVS_CT_ATTR_COMMIT);
}
+ }
if (action->ct.zone) {
nl_msg_put_u16(buf, OVS_CT_ATTR_ZONE, action->ct.zone);
@@ -1380,6 +1384,11 @@ parse_put_flow_ct_action(struct tc_flower *flower,
action->ct.commit = true;
}
break;
+ case OVS_CT_ATTR_FORCE_COMMIT: {
+ action->ct.commit = true;
+ action->ct.force = true;
+ }
+ break;
case OVS_CT_ATTR_ZONE: {
action->ct.zone = nl_attr_get_u16(ct_attr);
}
