net: openvswitch: simplify the flow_hash
authorTonghao Zhang <xiangxia.m.yue@gmail.com>
Fri, 1 Nov 2019 14:23:50 +0000 (22:23 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 4 Nov 2019 01:18:03 +0000 (17:18 -0800)
Simplify the code and remove the unnecessary BUILD_BUG_ON.

Signed-off-by: Tonghao Zhang <xiangxia.m.yue@gmail.com>
Tested-by: Greg Rose <gvrose8192@gmail.com>
Acked-by: William Tu <u9012063@gmail.com>
Acked-by: Pravin B Shelar <pshelar@ovn.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/openvswitch/flow_table.c

index a10d421773f8cb92c3171687110c3268ca5a1f51..96757e2ed256d86d18996327f8f31b2f54a360b6 100644 (file)
@@ -432,13 +432,10 @@ err_free_ti:
 static u32 flow_hash(const struct sw_flow_key *key,
                     const struct sw_flow_key_range *range)
 {
-       int key_start = range->start;
-       int key_end = range->end;
-       const u32 *hash_key = (const u32 *)((const u8 *)key + key_start);
-       int hash_u32s = (key_end - key_start) >> 2;
+       const u32 *hash_key = (const u32 *)((const u8 *)key + range->start);
 
        /* Make sure number of hash bytes are multiple of u32. */
-       BUILD_BUG_ON(sizeof(long) % sizeof(u32));
+       int hash_u32s = range_n_bytes(range) >> 2;
 
        return jhash2(hash_key, hash_u32s, 0);
 }