genetlink: make genl_ops flags a u8 and move to end
authorJohannes Berg <johannes.berg@intel.com>
Thu, 14 Nov 2013 16:14:47 +0000 (17:14 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 14 Nov 2013 22:10:41 +0000 (17:10 -0500)
To save some space in the struct on 32-bit systems,
make the flags a u8 (only 4 bits are used) and also
move them to the end of the struct.

This has no impact on 64-bit systems as alignment of
the struct in an array uses up the space anyway.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/genetlink.h

index d87486aa06114af7ab5bfcd1ce8a0d6724371657..0b6a144468c681ae7208dab62a9f9f45fd03dae8 100644 (file)
@@ -112,15 +112,15 @@ static inline void genl_info_net_set(struct genl_info *info, struct net *net)
  * @ops_list: operations list
  */
 struct genl_ops {
-       u8                      cmd;
-       u8                      internal_flags;
-       unsigned int            flags;
        const struct nla_policy *policy;
        int                    (*doit)(struct sk_buff *skb,
                                       struct genl_info *info);
        int                    (*dumpit)(struct sk_buff *skb,
                                         struct netlink_callback *cb);
        int                    (*done)(struct netlink_callback *cb);
+       u8                      cmd;
+       u8                      internal_flags;
+       u8                      flags;
 };
 
 int __genl_register_family(struct genl_family *family);