diff --git a/lib/neutron_plugins/ovs_base b/lib/neutron_plugins/ovs_base index e1c3c3f116..e13cbb1b18 100644 --- a/lib/neutron_plugins/ovs_base +++ b/lib/neutron_plugins/ovs_base @@ -38,7 +38,14 @@ function _neutron_ovs_base_install_agent_packages { # FIXME add to ``files/apts/neutron``, but don't install if not needed! if is_ubuntu; then kernel_version=`cat /proc/version | cut -d " " -f3` - install_package make fakeroot dkms openvswitch-switch openvswitch-datapath-dkms linux-headers-$kernel_version + ovs_packages="make fakeroot dkms openvswitch-switch" + # From kernel 3.13 on, openvswitch-datapath-dkms is not needed + kernel_major_minor=`echo $kernel_version | cut -d. -f1-2` + if [ `vercmp_numbers "$kernel_major_minor" "3.13"` -lt "0" ]; then + ovs_packages="$ovs_packages openvswitch-datapath-dkms" + fi + ovs_packages="$ovs_packages linux-headers-$kernel_version" + install_package $ovs_packages elif is_fedora; then install_package openvswitch # Ensure that the service is started