ovs-sandbox: Add -d option to run ovsdb-server under GDB
authorAndy Zhou <azhou@nicira.com>
Fri, 20 Feb 2015 21:01:36 +0000 (13:01 -0800)
committerAndy Zhou <azhou@nicira.com>
Mon, 23 Feb 2015 00:59:03 +0000 (16:59 -0800)
Signed-off-by: Andy Zhou <azhou@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>
tutorial/Tutorial.md
tutorial/ovs-sandbox

index d9e8004..1d8bbf5 100644 (file)
@@ -115,7 +115,8 @@ GDB can already be used to debug any running process, with the usual
 
 'ovs-sandbox' also has a '-g' option for launching ovs-vswitchd under GDB.
 This option can be handy for setting break points before ovs-vswitchd runs,
-or for catching early segfaults.
+or for catching early segfaults. Similarly, a '-d' option can be used to
+run ovsdb-server under GDB. Both options can be specified at the same time.
 
 To avoid GDB mangling with the sandbox sub shell terminal, 'ovs-sandbox'
 starts a new xterm to run each GDB session.  For systems that do not support
index bced8f4..1504ea9 100755 (executable)
@@ -42,7 +42,8 @@ rungdb() {
     fi
 }
 
-gdb_vswitchd=false;
+gdb_vswitchd=false
+gdb_ovsdb=false
 builddir=
 srcdir=
 schema=
@@ -87,6 +88,7 @@ These options force ovs-sandbox to use a particular OVS build:
 These options force ovs-sandbox to use an installed Open vSwitch:
   -i, --installed      use installed Open vSwitch
   -g, --gdb-vswitchd   run ovs-vswitchd under gdb
+  -d, --gdb-ovsdb      run ovsdb-server under gdb
   -S, --schema=FILE    use FILE as vswitch.ovsschema
 
 Other options:
@@ -125,6 +127,9 @@ EOF
         -g|--gdb-v*)
             gdb_vswitchd=true
             ;;
+        -d|--gdb-o*)
+            gdb_ovsdb=true
+            ;;
         -*)
             echo "unrecognized option $option (use --help for help)" >&2
             exit 1
@@ -227,7 +232,7 @@ trap 'kill `cat "$sandbox"/*.pid`' 0 1 2 3 13 14 15
 # Create database and start ovsdb-server.
 touch "$sandbox"/.conf.db.~lock~
 run ovsdb-tool create conf.db "$schema"
-run ovsdb-server --detach --no-chdir --pidfile -vconsole:off --log-file \
+rungdb $gdb_ovsdb ovsdb-server --detach --no-chdir --pidfile -vconsole:off --log-file \
     --remote=punix:"$sandbox"/db.sock
 
 # Start ovs-vswitchd.