minor_rev _extra <<<"${current_kernel}"
# echo mainline_major=$mainline_major mainline_minor=$mainline_minor \
# mainline_patch=$mainline_patch major_rev=$major_rev minor_rev=$minor_rev
-if [ "$mainline_major" = "3" ] && [ "$mainline_minor" = "10" ]; then
+if grep -qs "suse" /etc/os-release; then
+ # For SLES or OpenSUSE
+ if [ -x "%{_datadir}/openvswitch/scripts/ovs-kmod-manage.sh" ]; then
+ %{_datadir}/openvswitch/scripts/ovs-kmod-manage.sh
+ fi
+elif [ "$mainline_major" = "3" ] && [ "$mainline_minor" = "10" ]; then
if [ "$major_rev" = "327" ] || [ "$major_rev" = "693" ]; then
# For RHEL 7.2 and 7.4
if [ -x "%{_datadir}/openvswitch/scripts/ovs-kmod-manage.sh" ]; then
%{_datadir}/openvswitch/scripts/ovs-kmod-manage.sh
fi
fi
-elif [ "$mainline_major" = "4" ] && [ "$mainline_minor" = "4" ] && \
- [ "$mainline_patch" -ge "73" ]; then
- # For SLES 12 SP3
- if [ -x "%{_datadir}/openvswitch/scripts/ovs-kmod-manage.sh" ]; then
- %{_datadir}/openvswitch/scripts/ovs-kmod-manage.sh
- fi
else
# Ensure that modprobe will find our modules.
for k in $(cd /lib/modules && /bin/ls); do
# See the License for the specific language governing permissions and
# limitations under the License.
-# This version of the script is intended to be used on kernel version 3.10.0
-# major revision 327 (RHEL 7.2) and 693 (RHEL 7.4), and kernel version 4.4.x,
-# x >= 73 (SLES 12 SP3) only. It is packaged in the openvswitch kmod RPM
-# and run in the post-install scripts.
+# This script is intended to be used on the following kernels.
+# - 3.10.0 major revision 327 (RHEL 7.2)
+# - 3.10.0 major revision 693 (RHEL 7.4)
+# - 4.4.x, x >= 73 (SLES 12 SP3)
+# - 4.12.x, x >= 14 (SLES 12 SP4).
+# It is packaged in the openvswitch kmod RPM and run in the post-install
+# scripts.
#
# For kernel 3.10.0-693,
# due to some backward incompatible changes introduced in minor revision 17.1,
# 4.4.73 to 4.4.114; modules built against 4.4.120 can run on systems from
# 4.4.120 onwards.
#
+# For kernel 4.12.x, x>=14,
+# kernel modules built with the oldest compatible kernel 4.12.14-94.41.1 can
+# run on all versions onwards.
+#
# This script checks the current running kernel version, and update symlinks
# for the openvswitch kernel modules in the appropriate kernel directory,
# provided the kmod RPM has installed kernel modules files built from both
ver_offset=2
installed_ver="$mainline_patch"
fi
+elif [ "$mainline_major" = "4" ] && [ "$mainline_minor" = "12" ]; then
+ if [ "$mainline_patch" -ge "14" ]; then
+# echo "sles12sp4"
+ comp_ver=14
+ ver_offset=2
+ installed_ver="$mainline_patch"
+ fi
fi
if [ X"$ver_offset" = X ]; then