openvswitch-datapath-dkms fails to build with 3.13 kernel [error: conflicting types for ‘genl_notify’ extern void genl_notify]

Bug #1266749 reported by James Page
206
This bug affects 45 people
Affects Status Importance Assigned to Milestone
openvswitch (Ubuntu)
Expired
Medium
Unassigned

Bug Description

Fair amount of refactoring in multicast networking in the new upstream API:

  CC [M] /var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.o
In file included from /var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:52:0:
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/compat/include/net/genetlink.h:20:13: error: conflicting types for ‘genl_notify’
 extern void genl_notify(struct sk_buff *skb, struct net *net, u32 portid,
             ^
In file included from /var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/compat/include/net/genetlink.h:7:0,
                 from /var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:52:
include/net/genetlink.h:176:6: note: previous declaration of ‘genl_notify’ was here
 void genl_notify(struct genl_family *family,
      ^
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c: In function ‘ovs_notify’:
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:73:10: error: ‘struct genl_multicast_group’ has no member named ‘id’
       grp->id, info->nlhdr, GFP_KERNEL);
          ^
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c: In function ‘ovs_flow_cmd_new_or_set’:
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:1387:32: error: ‘struct genl_multicast_group’ has no member named ‘id’
     ovs_dp_flow_multicast_group.id, PTR_ERR(reply));
                                ^
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c: In function ‘ovs_dp_cmd_set’:
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:1831:36: error: ‘struct genl_multicast_group’ has no member named ‘id’
     ovs_dp_datapath_multicast_group.id, err);
                                    ^
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c: In function ‘dp_register_genl’:
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:2328:19: error: macro "genl_register_family_with_ops" passed 3 arguments, but takes just 2
           f->n_ops);
                   ^
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:2327:9: error: ‘genl_register_family_with_ops’ undeclared (first use in this function)
   err = genl_register_family_with_ops(f->family, f->ops,
         ^
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:2327:9: note: each undeclared identifier is reported only once for each function it appears in
/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.c:2334:4: error: implicit declaration of function ‘genl_register_mc_group’ [-Werror=implicit-function-declaration]
    err = genl_register_mc_group(f->family, f->group);
    ^
cc1: some warnings being treated as errors
make[2]: *** [/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux/datapath.o] Error 1
make[1]: *** [_module_/var/lib/dkms/openvswitch/2.0.1+git20140106/source/datapath/linux] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-0-generic'
make: *** [default] Error 2

Revision history for this message
James Page (james-page) wrote :

<jamespage> apw, the 3.13 changes for openvswitch look a bit terrifying and are definately beyond my capability to fixup in openvswitch
 I'm going to punt this upstream and disable the DKMS package for the time being
<apw> jamespage, do we lose anything significant by doing so, you mentioned a feature
<jamespage> apw, just support for LISP based tunnelling which is pretty experimental
<apw> jamespage, so not the end if the world i hope then
<jamespage> apw, not at all - the 'supported' tunnelling mechanisms for openstack are GRE and VXLAN
 both are support directly by the in-tree kernel module now
<apw> ok good

Revision history for this message
James Page (james-page) wrote :

Reported upstream as a wishlist request as we don't need the DKMS module for the majority of use cases.

Revision history for this message
James Page (james-page) wrote :
Scott Moser (smoser)
Changed in openvswitch (Ubuntu):
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
James Page (james-page) wrote :
summary: - openvswitch-datapath-dkms fails to build with 3.13 kernel
+ openvswitch-datapath-dkms fails to build with 3.13 kernel [error:
+ conflicting types for ‘genl_notify’ extern void genl_notify]
Revision history for this message
Chris J Arges (arges) wrote :

The dkms package in trusty + 3.13 no longer fails with this error. It now fails with bug 1369294. However it makes more sense to prefer the module shipped with linux over this dkms package.

Changed in openvswitch (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for openvswitch (Ubuntu) because there has been no activity for 60 days.]

Changed in openvswitch (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.