net: skbuff: push nf_trace down the bitfield
authorJakub Kicinski <kuba@kernel.org>
Mon, 17 Apr 2023 15:53:49 +0000 (08:53 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Apr 2023 12:04:30 +0000 (13:04 +0100)
nf_trace is a debug feature, AFAIU, and yet it sits oddly
high in the sk_buff bitfield. Move it down, pushing up
dst_pending_confirm and inner_protocol_type.

Next change will make nf_trace optional (under Kconfig)
and all optional fields should be placed after 2b fields
to avoid 2b fields straddling bytes.

dst_pending_confirm is L3, so it makes sense next to ignore_df.
inner_protocol_type goes up just to keep the balance.

Acked-by: Florian Westphal <fw@strlen.de>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/skbuff.h

index 2595b2c..3ae9e88 100644 (file)
@@ -934,7 +934,7 @@ struct sk_buff {
        /* public: */
        __u8                    pkt_type:3; /* see PKT_TYPE_MAX */
        __u8                    ignore_df:1;
-       __u8                    nf_trace:1;
+       __u8                    dst_pending_confirm:1;
        __u8                    ip_summed:2;
        __u8                    ooo_okay:1;
 
@@ -949,7 +949,7 @@ struct sk_buff {
        __u8                    remcsum_offload:1;
        __u8                    csum_complete_sw:1;
        __u8                    csum_level:2;
-       __u8                    dst_pending_confirm:1;
+       __u8                    inner_protocol_type:1;
 
        __u8                    l4_hash:1;
        __u8                    sw_hash:1;
@@ -967,7 +967,7 @@ struct sk_buff {
 #endif
 
        __u8                    ipvs_property:1;
-       __u8                    inner_protocol_type:1;
+       __u8                    nf_trace:1;
 #ifdef CONFIG_NET_SWITCHDEV
        __u8                    offload_fwd_mark:1;
        __u8                    offload_l3_fwd_mark:1;