aboutsummaryrefslogtreecommitdiffstats
path: root/net/openvswitch
diff options
context:
space:
mode:
authorAndy Zhou <azhou@nicira.com>2014-02-02 17:08:06 -0800
committerJesse Gross <jesse@nicira.com>2014-02-04 22:32:38 -0800
commitc14e0953ca51dbcb8d1ac92acbdcff23d0caa158 (patch)
treec3a16743141b36b972590bb152b5a52bebc26459 /net/openvswitch
parentopenvswitch: Fix ovs_flow_free() ovs-lock assert. (diff)
downloadlinux-dev-c14e0953ca51dbcb8d1ac92acbdcff23d0caa158.tar.xz
linux-dev-c14e0953ca51dbcb8d1ac92acbdcff23d0caa158.zip
openvswitch: Suppress error messages on megaflow updates
With subfacets, we'd expect megaflow updates message to carry the original micro flow. If not, EINVAL is returned and kernel logs an error message. Now that the user space subfacet layer is removed, it is expected that flow updates can arrive with a micro flow other than the original. Change the return code to EEXIST and remove the kernel error log message. Reported-by: Ben Pfaff <blp@nicira.com> Signed-off-by: Andy Zhou <azhou@nicira.com> Signed-off-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to 'net/openvswitch')
-rw-r--r--net/openvswitch/datapath.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c
index 58689dda8377..e9a48baf8551 100644
--- a/net/openvswitch/datapath.c
+++ b/net/openvswitch/datapath.c
@@ -860,11 +860,8 @@ static int ovs_flow_cmd_new_or_set(struct sk_buff *skb, struct genl_info *info)
goto err_unlock_ovs;
/* The unmasked key has to be the same for flow updates. */
- error = -EINVAL;
- if (!ovs_flow_cmp_unmasked_key(flow, &match)) {
- OVS_NLERR("Flow modification message rejected, unmasked key does not match.\n");
+ if (!ovs_flow_cmp_unmasked_key(flow, &match))
goto err_unlock_ovs;
- }
/* Update actions. */
old_acts = ovsl_dereference(flow->sf_acts);