net: hns3: minor refactor for hns3_rx_checksum
authorYunsheng Lin <linyunsheng@huawei.com>
Sun, 14 Apr 2019 01:47:39 +0000 (09:47 +0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 14 Apr 2019 20:47:35 +0000 (13:47 -0700)
Change the parameters of hns3_rx_checksum to be more specific to
what is used internally, rather than passing in a pointer to the
whole hns3_desc. Reduces duplicate code and bring this function
inline with the approach used in hns3_set_gro_param.

Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c

index ec16b94..60afa15 100644 (file)
@@ -2332,16 +2332,11 @@ static void hns3_nic_reuse_page(struct sk_buff *skb, int i,
 }
 
 static void hns3_rx_checksum(struct hns3_enet_ring *ring, struct sk_buff *skb,
-                            struct hns3_desc *desc)
+                            u32 l234info, u32 bd_base_info)
 {
        struct net_device *netdev = ring->tqp->handle->kinfo.netdev;
        int l3_type, l4_type;
-       u32 bd_base_info;
        int ol4_type;
-       u32 l234info;
-
-       bd_base_info = le32_to_cpu(desc->rx.bd_base_info);
-       l234info = le32_to_cpu(desc->rx.l234_info);
 
        skb->ip_summed = CHECKSUM_NONE;
 
@@ -2751,7 +2746,7 @@ static int hns3_handle_rx_bd(struct hns3_enet_ring *ring,
        /* This is needed in order to enable forwarding support */
        hns3_set_gro_param(skb, l234info, bd_base_info);
 
-       hns3_rx_checksum(ring, skb, desc);
+       hns3_rx_checksum(ring, skb, l234info, bd_base_info);
        *out_skb = skb;
        hns3_set_rx_skb_rss_type(ring, skb);