Public bug reported: If we are using openvswitch in a system with a newer kernel (3.13/trusty) it should have the features required for neutron and not require an openvswitch dkms package. Therefore we should be able to use the native module.
In neutron/agent/linux/ovs_lib.py: def get_installed_ovs_klm_version(): args = ["modinfo", "openvswitch"] try: cmd = utils.execute(args) for line in cmd.split('\n'): if 'version: ' in line and not 'srcversion' in line: ver = re.findall("\d+\.\d+", line) return ver[0] except Exception: LOG.exception(_("Unable to retrieve OVS kernel module version.")) So if we run modinfo on a system without a DKMS package we get: $ modinfo openvswitch filename: /lib/modules/3.13.0-16-generic/kernel/net/openvswitch/openvswitch.ko license: GPL description: Open vSwitch switching datapath srcversion: 1CEE031973F0E4024ACC848 depends: libcrc32c,vxlan,gre intree: Y vermagic: 3.13.0-16-generic SMP mod_unload modversions signer: Magrathea: Glacier signing key sig_key: 1A:EE:D8:17:C4:D5:29:55:C4:FA:C3:3A:02:37:FE:0A:93:44:6D:69 sig_hashalgo: sha512 Because 'version' isn't provided we need an alternative way of checking if the openvswitch module has the required features. ** Affects: neutron Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1291535 Title: 'Unable to retrieve OVS kernel module version' when _not_ using DKMS openvswitch module Status in OpenStack Neutron (virtual network service): New Bug description: If we are using openvswitch in a system with a newer kernel (3.13/trusty) it should have the features required for neutron and not require an openvswitch dkms package. Therefore we should be able to use the native module. In neutron/agent/linux/ovs_lib.py: def get_installed_ovs_klm_version(): args = ["modinfo", "openvswitch"] try: cmd = utils.execute(args) for line in cmd.split('\n'): if 'version: ' in line and not 'srcversion' in line: ver = re.findall("\d+\.\d+", line) return ver[0] except Exception: LOG.exception(_("Unable to retrieve OVS kernel module version.")) So if we run modinfo on a system without a DKMS package we get: $ modinfo openvswitch filename: /lib/modules/3.13.0-16-generic/kernel/net/openvswitch/openvswitch.ko license: GPL description: Open vSwitch switching datapath srcversion: 1CEE031973F0E4024ACC848 depends: libcrc32c,vxlan,gre intree: Y vermagic: 3.13.0-16-generic SMP mod_unload modversions signer: Magrathea: Glacier signing key sig_key: 1A:EE:D8:17:C4:D5:29:55:C4:FA:C3:3A:02:37:FE:0A:93:44:6D:69 sig_hashalgo: sha512 Because 'version' isn't provided we need an alternative way of checking if the openvswitch module has the required features. To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1291535/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp