[NET]: Reduce size of sk_buff by 4 bytes
authorThomas Graf <tgraf@suug.ch>
Tue, 5 Jul 2005 21:13:41 +0000 (14:13 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 5 Jul 2005 21:13:41 +0000 (14:13 -0700)
Reduce local_df to a bit field and ip_summed to a 2 bits
field thus saving 13 bits. Move bit fields, packet type,
and protocol into the spare area between the priority
and the destructor. Saves 4 bytes on both, 32bit and
64bit architectures.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/skbuff.h

index 1e6290f4f81ec65b7a7fb3733c85ee6eacbc19f5..14b9504134954d2b624494d1d8590e66c92081eb 100644 (file)
@@ -248,17 +248,18 @@ struct sk_buff {
                                data_len,
                                mac_len,
                                csum;
-       unsigned char           local_df,
-                               cloned:1,
-                               nohdr:1,
-                               pkt_type,
-                               ip_summed;
        __u32                   priority;
-       unsigned short          protocol;
+       __u8                    local_df:1,
+                               cloned:1,
+                               ip_summed:2,
+                               nohdr:1;
+                               /* 3 bits spare */
+       __u8                    pkt_type;
+       __u16                   protocol;
 
        void                    (*destructor)(struct sk_buff *skb);
 #ifdef CONFIG_NETFILTER
-        unsigned long          nfmark;
+       unsigned long           nfmark;
        __u32                   nfcache;
        __u32                   nfctinfo;
        struct nf_conntrack     *nfct;