[ovs-dev] [PATCH v2] rhel: Fix ovs-kmod-manage.sh that may create invalid soft links

Yifeng Sun pkusunyifeng at gmail.com
Mon Nov 18 20:06:26 UTC 2019


Current code iterates every kernel under '/lib/modules' for a matched
version. As a result, this script may create invalid soft links if the
matched kernel doesn't have openvswitch-kmod RPM installed.

This patch fixes it.

VMWare-BZ: #2257534

Fixes: c3570519 ("rhel: add 4.4 kernel in kmod build with mulitple versions, fedora")
Signed-off-by: Yifeng Sun <pkusunyifeng at gmail.com>
---
v1->v2: Added fix tag, thanks YiHung.

 rhel/usr_share_openvswitch_scripts_ovs-kmod-manage.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/rhel/usr_share_openvswitch_scripts_ovs-kmod-manage.sh b/rhel/usr_share_openvswitch_scripts_ovs-kmod-manage.sh
index a643b55ff0f8..a252b391ecba 100644
--- a/rhel/usr_share_openvswitch_scripts_ovs-kmod-manage.sh
+++ b/rhel/usr_share_openvswitch_scripts_ovs-kmod-manage.sh
@@ -157,7 +157,7 @@ fi
 #$kmod_high_ver"
 
 found_match=false
-for kname in `ls -d /lib/modules/*`
+for kname in $kversion;
 do
     IFS='.\|-' read -r -a pkg_ver_nums <<<"${kname}"
     pkg_ver=${pkg_ver_nums[$ver_offset]}
@@ -184,14 +184,14 @@ if [ "$found_match" = "false" ]; then
     exit 1
 fi
 
-if [ "$requested_kernel" != "/lib/modules/$current_kernel" ]; then
+if [ "$requested_kernel" != "$current_kernel" ]; then
     if [ ! -d /lib/modules/$current_kernel/weak-updates/openvswitch ]; then
         mkdir -p /lib/modules/$current_kernel/weak-updates
         mkdir -p /lib/modules/$current_kernel/weak-updates/openvswitch
     fi
     for m in openvswitch vport-gre vport-stt vport-geneve \
         vport-lisp vport-vxlan; do
-        ln -f -s $requested_kernel/extra/openvswitch/$m.ko \
+        ln -f -s /lib/modules/$requested_kernel/extra/openvswitch/$m.ko \
             /lib/modules/$current_kernel/weak-updates/openvswitch/$m.ko
     done
 else
-- 
2.7.4



More information about the dev mailing list