From: Jiaran Zhang <zhangjia...@huawei.com>

Use common ipv6_addr_any() to determine if an addr is ipv6 any addr.

Signed-off-by: Jiaran Zhang <zhangjia...@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazh...@huawei.com>
---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 
b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
index 64a80a5..e2c5b8f 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
@@ -13,6 +13,7 @@
 #include <linux/platform_device.h>
 #include <linux/if_vlan.h>
 #include <linux/crash_dump.h>
+#include <net/ipv6.h>
 #include <net/rtnetlink.h>
 #include "hclge_cmd.h"
 #include "hclge_dcb.h"
@@ -5508,12 +5509,10 @@ static int hclge_fd_check_tcpip6_tuple(struct 
ethtool_tcpip6_spec *spec,
                BIT(INNER_IP_TOS);
 
        /* check whether src/dst ip address used */
-       if (!spec->ip6src[0] && !spec->ip6src[1] &&
-           !spec->ip6src[2] && !spec->ip6src[3])
+       if (ipv6_addr_any((struct in6_addr *)spec->ip6src))
                *unused_tuple |= BIT(INNER_SRC_IP);
 
-       if (!spec->ip6dst[0] && !spec->ip6dst[1] &&
-           !spec->ip6dst[2] && !spec->ip6dst[3])
+       if (ipv6_addr_any((struct in6_addr *)spec->ip6dst))
                *unused_tuple |= BIT(INNER_DST_IP);
 
        if (!spec->psrc)
@@ -5538,12 +5537,10 @@ static int hclge_fd_check_ip6_tuple(struct 
ethtool_usrip6_spec *spec,
                BIT(INNER_IP_TOS) | BIT(INNER_SRC_PORT) | BIT(INNER_DST_PORT);
 
        /* check whether src/dst ip address used */
-       if (!spec->ip6src[0] && !spec->ip6src[1] &&
-           !spec->ip6src[2] && !spec->ip6src[3])
+       if (ipv6_addr_any((struct in6_addr *)spec->ip6src))
                *unused_tuple |= BIT(INNER_SRC_IP);
 
-       if (!spec->ip6dst[0] && !spec->ip6dst[1] &&
-           !spec->ip6dst[2] && !spec->ip6dst[3])
+       if (ipv6_addr_any((struct in6_addr *)spec->ip6dst))
                *unused_tuple |= BIT(INNER_DST_IP);
 
        if (!spec->l4_proto)
-- 
2.7.4

Reply via email to