genetlink: statically initialize families
Instead of providing macros/inline functions to initialize the families, make all users initialize them statically and get rid of the macros. This reduces the kernel code size by about 1.6k on x86-64 (with allyesconfig). Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
a07ea4d994
commit
489111e5c2
@@ -26,22 +26,8 @@
|
||||
#include "rdev-ops.h"
|
||||
#include "core.h"
|
||||
|
||||
static int nl802154_pre_doit(const struct genl_ops *ops, struct sk_buff *skb,
|
||||
struct genl_info *info);
|
||||
|
||||
static void nl802154_post_doit(const struct genl_ops *ops, struct sk_buff *skb,
|
||||
struct genl_info *info);
|
||||
|
||||
/* the netlink family */
|
||||
static struct genl_family nl802154_fam = {
|
||||
.name = NL802154_GENL_NAME, /* have users key off the name instead */
|
||||
.hdrsize = 0, /* no private header */
|
||||
.version = 1, /* no particular meaning now */
|
||||
.maxattr = NL802154_ATTR_MAX,
|
||||
.netnsok = true,
|
||||
.pre_doit = nl802154_pre_doit,
|
||||
.post_doit = nl802154_post_doit,
|
||||
};
|
||||
static struct genl_family nl802154_fam;
|
||||
|
||||
/* multicast groups */
|
||||
enum nl802154_multicast_groups {
|
||||
@@ -2476,11 +2462,25 @@ static const struct genl_ops nl802154_ops[] = {
|
||||
#endif /* CONFIG_IEEE802154_NL802154_EXPERIMENTAL */
|
||||
};
|
||||
|
||||
static struct genl_family nl802154_fam = {
|
||||
.name = NL802154_GENL_NAME, /* have users key off the name instead */
|
||||
.hdrsize = 0, /* no private header */
|
||||
.version = 1, /* no particular meaning now */
|
||||
.maxattr = NL802154_ATTR_MAX,
|
||||
.netnsok = true,
|
||||
.pre_doit = nl802154_pre_doit,
|
||||
.post_doit = nl802154_post_doit,
|
||||
.module = THIS_MODULE,
|
||||
.ops = nl802154_ops,
|
||||
.n_ops = ARRAY_SIZE(nl802154_ops),
|
||||
.mcgrps = nl802154_mcgrps,
|
||||
.n_mcgrps = ARRAY_SIZE(nl802154_mcgrps),
|
||||
};
|
||||
|
||||
/* initialisation/exit functions */
|
||||
int nl802154_init(void)
|
||||
{
|
||||
return genl_register_family_with_ops_groups(&nl802154_fam, nl802154_ops,
|
||||
nl802154_mcgrps);
|
||||
return genl_register_family(&nl802154_fam);
|
||||
}
|
||||
|
||||
void nl802154_exit(void)
|
||||
|
Reference in New Issue
Block a user