genetlink: only pass array to genl_register_family_with_ops()

As suggested by David Miller, make genl_register_family_with_ops()
a macro and pass only the array, evaluating ARRAY_SIZE() in the
macro, this is a little safer.

The openvswitch has some indirection, assing ops/n_ops directly in
that code. This might ultimately just assign the pointers in the
family initializations, saving the struct genl_family_and_ops and
code (once mcast groups are handled differently.)

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
此提交包含在:
Johannes Berg
2013-11-19 15:19:31 +01:00
提交者 David S. Miller
父節點 dbde497966
當前提交 c53ed74236
共有 22 個檔案被更改,包括 47 行新增53 行删除

查看文件

@@ -414,8 +414,7 @@ int __init hsr_netlink_init(void)
if (rc)
goto fail_rtnl_link_register;
rc = genl_register_family_with_ops(&hsr_genl_family, hsr_ops,
ARRAY_SIZE(hsr_ops));
rc = genl_register_family_with_ops(&hsr_genl_family, hsr_ops);
if (rc)
goto fail_genl_register_family;