diff mbox

[ovs-dev,3/3] netdev-tc-offloads: Parse ip related fields only if eth type is ip

Message ID 1501150800-48640-4-git-send-email-roid@mellanox.com
State Superseded
Headers show

Commit Message

Roi Dayan July 27, 2017, 10:20 a.m. UTC
From: Paul Blakey <paulb@mellanox.com>

No need to parse ip related fields otherwise.

Signed-off-by: Paul Blakey <paulb@mellanox.com>
Reviewed-by: Roi Dayan <roid@mellanox.com>
---
 lib/netdev-tc-offloads.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

Comments

Simon Horman July 28, 2017, 12:52 p.m. UTC | #1
On Thu, Jul 27, 2017 at 01:20:00PM +0300, Roi Dayan wrote:
> From: Paul Blakey <paulb@mellanox.com>
> 
> No need to parse ip related fields otherwise.

I would prefer if the changelog could be read without reference
to the subject. As you are planning to respin anyway perhaps you could
fix this up.

The code changes look fine to me.
diff mbox

Patch

diff --git a/lib/netdev-tc-offloads.c b/lib/netdev-tc-offloads.c
index e2aea60..c5f305d 100644
--- a/lib/netdev-tc-offloads.c
+++ b/lib/netdev-tc-offloads.c
@@ -307,19 +307,19 @@  parse_tc_flower_to_match(struct tc_flower *flower,
         match_set_dl_type(match, key->eth_type);
     }
 
-    if (key->ip_proto && is_ip_any(&match->flow)) {
-        match_set_nw_proto(match, key->ip_proto);
-    }
+    if (is_ip_any(&match->flow)) {
+        if (key->ip_proto) {
+            match_set_nw_proto(match, key->ip_proto);
+        }
 
-    match_set_nw_src_masked(match, key->ipv4.ipv4_src, mask->ipv4.ipv4_src);
-    match_set_nw_dst_masked(match, key->ipv4.ipv4_dst, mask->ipv4.ipv4_dst);
+        match_set_nw_src_masked(match, key->ipv4.ipv4_src, mask->ipv4.ipv4_src);
+        match_set_nw_dst_masked(match, key->ipv4.ipv4_dst, mask->ipv4.ipv4_dst);
 
-    match_set_ipv6_src_masked(match,
-                              &key->ipv6.ipv6_src, &mask->ipv6.ipv6_src);
-    match_set_ipv6_dst_masked(match,
-                              &key->ipv6.ipv6_dst, &mask->ipv6.ipv6_dst);
+        match_set_ipv6_src_masked(match,
+                                  &key->ipv6.ipv6_src, &mask->ipv6.ipv6_src);
+        match_set_ipv6_dst_masked(match,
+                                  &key->ipv6.ipv6_dst, &mask->ipv6.ipv6_dst);
 
-    if (is_ip_any(&match->flow)) {
         if (key->ip_proto == IPPROTO_TCP) {
             match_set_tp_dst_masked(match, key->tcp_dst, mask->tcp_dst);
             match_set_tp_src_masked(match, key->tcp_src, mask->tcp_src);