xenserver: Load veth driver on 2.6.18 systems
authorJustin Pettit <jpettit@nicira.com>
Wed, 14 Apr 2010 03:52:48 +0000 (20:52 -0700)
committerJustin Pettit <jpettit@nicira.com>
Thu, 15 Apr 2010 03:53:16 +0000 (20:53 -0700)
In a future commit, the "patch" netdev type will be introduced.  The
initial implementation will be based on veth, for which we have a kernel
module on 2.6.18.  A more general solution will be used in the future,
at which time, this loading of the veth module can be removed.

xenserver/etc_init.d_openvswitch
xenserver/openvswitch-xen.spec

index b7feb9b..6adf654 100755 (executable)
@@ -126,6 +126,9 @@ function insert_modules_if_required {
     if [ "$ENABLE_BRCOMPAT" = "y" ] && [ -n "$BRCOMPATD_PIDFILE" ] && ! lsmod | grep -q "brcompat_mod"; then
         action "Inserting brcompat module" modprobe brcompat_mod
     fi
+    if [ -f "/lib/modules/`uname -r`/kernel/extra/openvswitch/veth_mod.ko" ] && ! lsmod | grep -q "veth_mod"; then
+        action "Inserting veth module" modprobe veth
+    fi
     if [ -f "/lib/modules/`uname -r`/kernel/extra/openvswitch/ip_gre_mod.ko" ] && ! lsmod | grep -q "ip_gre_mod"; then
         action "Inserting ip_gre module" modprobe ip_gre_mod
     fi
index a9c662a..5abbda5 100644 (file)
@@ -103,7 +103,6 @@ rm \
     $RPM_BUILD_ROOT/usr/share/man/man8/ovs-kill.8 \
     $RPM_BUILD_ROOT/usr/share/man/man8/ovs-openflowd.8 \
     $RPM_BUILD_ROOT/usr/share/man/man8/ovs-pki.8
-rm -f $RPM_BUILD_ROOT/lib/modules/%{xen_version}/kernel/extra/openvswitch/veth_mod.ko
 
 install -d -m 755 $RPM_BUILD_ROOT/var/lib/openvswitch
 
@@ -337,6 +336,9 @@ fi
 %if %(echo '%{xen_version}'|awk -F"." '{if ($3>=18) print 1; else print 0;}')
 /lib/modules/%{xen_version}/kernel/extra/openvswitch/ip_gre_mod.ko
 %endif
+%if %(echo '%{xen_version}'|awk -F"[.-]" '{if ($3==18) print 1; else print 0;}')
+/lib/modules/%{xen_version}/kernel/extra/openvswitch/veth_mod.ko
+%endif
 /usr/share/openvswitch/scripts/refresh-network-uuids
 /usr/share/openvswitch/scripts/interface-reconfigure
 /usr/share/openvswitch/scripts/InterfaceReconfigure.py