aboutsummaryrefslogtreecommitdiffstats
path: root/net/openvswitch/datapath.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2016-10-24 08:40:02 -0400
committerDavid S. Miller <davem@davemloft.net>2016-10-27 16:16:09 -0400
commita07ea4d9941af5a0c6f0be2a71b51ac9c083c5e5 (patch)
tree52d22e6ed0079bb5a78d610c2ee33a783f070553 /net/openvswitch/datapath.c
parentc90c39dab3e02ce45427a214746711f33ad13be6 (diff)
genetlink: no longer support using static family IDs
Static family IDs have never really been used, the only use case was the workaround I introduced for those users that assumed their family ID was also their multicast group ID. Additionally, because static family IDs would never be reserved by the generic netlink code, using a relatively low ID would only work for built-in families that can be registered immediately after generic netlink is started, which is basically only the control family (apart from the workaround code, which I also had to add code for so it would reserve those IDs) Thus, anything other than GENL_ID_GENERATE is flawed and luckily not used except in the cases I mentioned. Move those workarounds into a few lines of code, and then get rid of GENL_ID_GENERATE entirely, making it more robust. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/openvswitch/datapath.c')
-rw-r--r--net/openvswitch/datapath.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c
index 194435aa1165..f9fef7dfba15 100644
--- a/net/openvswitch/datapath.c
+++ b/net/openvswitch/datapath.c
@@ -671,7 +671,6 @@ static const struct genl_ops dp_packet_genl_ops[] = {
671}; 671};
672 672
673static struct genl_family dp_packet_genl_family = { 673static struct genl_family dp_packet_genl_family = {
674 .id = GENL_ID_GENERATE,
675 .hdrsize = sizeof(struct ovs_header), 674 .hdrsize = sizeof(struct ovs_header),
676 .name = OVS_PACKET_FAMILY, 675 .name = OVS_PACKET_FAMILY,
677 .version = OVS_PACKET_VERSION, 676 .version = OVS_PACKET_VERSION,
@@ -1436,7 +1435,6 @@ static const struct genl_ops dp_flow_genl_ops[] = {
1436}; 1435};
1437 1436
1438static struct genl_family dp_flow_genl_family = { 1437static struct genl_family dp_flow_genl_family = {
1439 .id = GENL_ID_GENERATE,
1440 .hdrsize = sizeof(struct ovs_header), 1438 .hdrsize = sizeof(struct ovs_header),
1441 .name = OVS_FLOW_FAMILY, 1439 .name = OVS_FLOW_FAMILY,
1442 .version = OVS_FLOW_VERSION, 1440 .version = OVS_FLOW_VERSION,
@@ -1822,7 +1820,6 @@ static const struct genl_ops dp_datapath_genl_ops[] = {
1822}; 1820};
1823 1821
1824static struct genl_family dp_datapath_genl_family = { 1822static struct genl_family dp_datapath_genl_family = {
1825 .id = GENL_ID_GENERATE,
1826 .hdrsize = sizeof(struct ovs_header), 1823 .hdrsize = sizeof(struct ovs_header),
1827 .name = OVS_DATAPATH_FAMILY, 1824 .name = OVS_DATAPATH_FAMILY,
1828 .version = OVS_DATAPATH_VERSION, 1825 .version = OVS_DATAPATH_VERSION,
@@ -2244,7 +2241,6 @@ static const struct genl_ops dp_vport_genl_ops[] = {
2244}; 2241};
2245 2242
2246struct genl_family dp_vport_genl_family = { 2243struct genl_family dp_vport_genl_family = {
2247 .id = GENL_ID_GENERATE,
2248 .hdrsize = sizeof(struct ovs_header), 2244 .hdrsize = sizeof(struct ovs_header),
2249 .name = OVS_VPORT_FAMILY, 2245 .name = OVS_VPORT_FAMILY,
2250 .version = OVS_VPORT_VERSION, 2246 .version = OVS_VPORT_VERSION,