OSDN Git Service

net: core: Use FIELD_SIZEOF directly instead of reimplementing its function
authorzhong jiang <zhongjiang@huawei.com>
Wed, 19 Sep 2018 11:32:12 +0000 (19:32 +0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 20 Sep 2018 03:58:04 +0000 (20:58 -0700)
FIELD_SIZEOF is defined as a macro to calculate the specified value. Therefore,
We prefer to use the macro rather than calculating its value.

Signed-off-by: zhong jiang <zhongjiang@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/flow_dissector.c

index ce9eeeb..1e745db 100644 (file)
@@ -382,8 +382,8 @@ __skb_flow_dissect_gre(const struct sk_buff *skb,
        offset += sizeof(struct gre_base_hdr);
 
        if (hdr->flags & GRE_CSUM)
-               offset += sizeof(((struct gre_full_hdr *) 0)->csum) +
-                         sizeof(((struct gre_full_hdr *) 0)->reserved1);
+               offset += FIELD_SIZEOF(struct gre_full_hdr, csum) +
+                         FIELD_SIZEOF(struct gre_full_hdr, reserved1);
 
        if (hdr->flags & GRE_KEY) {
                const __be32 *keyid;
@@ -405,11 +405,11 @@ __skb_flow_dissect_gre(const struct sk_buff *skb,
                        else
                                key_keyid->keyid = *keyid & GRE_PPTP_KEY_MASK;
                }
-               offset += sizeof(((struct gre_full_hdr *) 0)->key);
+               offset += FIELD_SIZEOF(struct gre_full_hdr, key);
        }
 
        if (hdr->flags & GRE_SEQ)
-               offset += sizeof(((struct pptp_gre_header *) 0)->seq);
+               offset += FIELD_SIZEOF(struct pptp_gre_header, seq);
 
        if (gre_ver == 0) {
                if (*p_proto == htons(ETH_P_TEB)) {
@@ -436,7 +436,7 @@ __skb_flow_dissect_gre(const struct sk_buff *skb,
                u8 *ppp_hdr;
 
                if (hdr->flags & GRE_ACK)
-                       offset += sizeof(((struct pptp_gre_header *) 0)->ack);
+                       offset += FIELD_SIZEOF(struct pptp_gre_header, ack);
 
                ppp_hdr = __skb_header_pointer(skb, *p_nhoff + offset,
                                               sizeof(_ppp_hdr),