summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPravin B Shelar <pshelar@nicira.com>2015-02-10 21:35:16 (GMT)
committerDavid S. Miller <davem@davemloft.net>2015-02-11 22:40:15 (GMT)
commitb35725a285768d85b5ba1be7fe5002654a65ce88 (patch)
treeb17534490b4f67d0a36ac20941c6cf97a6c57f6f
parent673e2baaa6d986e2fcd9c867661d8113f6c7dc7b (diff)
downloadlinux-b35725a285768d85b5ba1be7fe5002654a65ce88.tar.xz
openvswitch: Reset key metadata for packet execution.
Userspace packet execute command pass down flow key for given packet. But userspace can skip some parameter with zero value. Therefore kernel needs to initialize key metadata to zero. Fixes: 0714812134 ("openvswitch: Eliminate memset() from flow_extract.") Signed-off-by: Pravin B Shelar <pshelar@nicira.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/openvswitch/flow.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/openvswitch/flow.c b/net/openvswitch/flow.c
index e2c348b..50ec42f 100644
--- a/net/openvswitch/flow.c
+++ b/net/openvswitch/flow.c
@@ -717,6 +717,8 @@ int ovs_flow_key_extract_userspace(const struct nlattr *attr,
{
int err;
+ memset(key, 0, OVS_SW_FLOW_KEY_METADATA_SIZE);
+
/* Extract metadata from netlink attributes. */
err = ovs_nla_get_flow_metadata(attr, key, log);
if (err)