[ovs-dev] [PATCH] vswitch.ovsschema: A new column, 'kmod_version' in Open_vSwitch table.

Gurucharan Shetty shettyg at nicira.com
Wed Oct 16 20:55:41 UTC 2013


The new column 'kmod_version' will be used by ovs-ctl to set the
kernel module version that ovs-vswitchd will be interacting with.
This column can be quite useful for remote systems to figure out
any discrepancies in the kernel module version being used in all
of the hypervisors under its domain.

Signed-off-by: Gurucharan Shetty <gshetty at nicira.com>
---
 utilities/ovs-ctl.in       |   20 +++++++++++++-------
 vswitchd/vswitch.ovsschema |    7 +++++--
 vswitchd/vswitch.xml       |    4 ++++
 3 files changed, 22 insertions(+), 9 deletions(-)

diff --git a/utilities/ovs-ctl.in b/utilities/ovs-ctl.in
index 0735160..ad76b85 100755
--- a/utilities/ovs-ctl.in
+++ b/utilities/ovs-ctl.in
@@ -229,13 +229,19 @@ start_forwarding () {
         # allows a very large number of bridges and ports.
         ulimit -n 7500
 
-	    # Start ovs-vswitchd.
-	    set ovs-vswitchd unix:"$DB_SOCK"
-	    set "$@" -vconsole:emer -vsyslog:err -vfile:info
-	    if test X"$MLOCKALL" != Xno; then
-	        set "$@" --mlockall
-	    fi
-	    start_daemon "$OVS_VSWITCHD_PRIORITY" "$OVS_VSWITCHD_WRAPPER" "$@"
+        # Set the kernel module version.
+        if [ -e "/sys/module/openvswitch/version" ]; then
+            kmodversion=`cat /sys/module/openvswitch/version`
+            ovs_vsctl set Open_vSwitch . kmod_version="$kmodversion"
+        fi
+
+        # Start ovs-vswitchd.
+        set ovs-vswitchd unix:"$DB_SOCK"
+        set "$@" -vconsole:emer -vsyslog:err -vfile:info
+        if test X"$MLOCKALL" != Xno; then
+            set "$@" --mlockall
+        fi
+        start_daemon "$OVS_VSWITCHD_PRIORITY" "$OVS_VSWITCHD_WRAPPER" "$@"
     fi
 }
 
diff --git a/vswitchd/vswitch.ovsschema b/vswitchd/vswitch.ovsschema
index 538dad3..f2a3676 100644
--- a/vswitchd/vswitch.ovsschema
+++ b/vswitchd/vswitch.ovsschema
@@ -1,6 +1,6 @@
 {"name": "Open_vSwitch",
- "version": "7.3.0",
- "cksum": "2483452374 20182",
+ "version": "7.3.1",
+ "cksum": "961659076 20292",
  "tables": {
    "Open_vSwitch": {
      "columns": {
@@ -34,6 +34,9 @@
        "db_version": {
          "type": {"key": {"type": "string"},
                   "min": 0, "max": 1}},
+       "kmod_version": {
+         "type": {"key": {"type": "string"},
+                  "min": 0, "max": 1}},
        "system_type": {
          "type": {"key": {"type": "string"},
                   "min": 0, "max": 1}},
diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml
index c12fd8f..f298b88 100644
--- a/vswitchd/vswitch.xml
+++ b/vswitchd/vswitch.xml
@@ -358,6 +358,10 @@
         </p>
       </column>
 
+      <column name="kmod_version">
+        The Open vSwitch kernel module version number, e.g. <code>1.1.0</code>.
+      </column>
+
       <column name="system_type">
         <p>
           An identifier for the type of system on top of which Open vSwitch
-- 
1.7.9.5




More information about the dev mailing list