diff options
author | Justin Pettit <jpettit@nicira.com> | 2015-05-07 16:52:06 -0700 |
---|---|---|
committer | Justin Pettit <jpettit@nicira.com> | 2015-05-07 16:52:06 -0700 |
commit | f2d371f7f6e765d8e97a3bd31fffa8197bd45fe2 (patch) | |
tree | 06ed5bd8c1c0fa2f6d9add596c6efe0f0ef94228 /tutorial | |
parent | e387e3e885222651f11a23c401e9e27fca3362ef (diff) | |
parent | 88c98bf5635c732d4c77e5314ec7440a08a09dec (diff) | |
download | openvswitch-f2d371f7f6e765d8e97a3bd31fffa8197bd45fe2.tar.gz |
Merge "master" into "ovn".
This brings in STT.
Conflicts:
tutorial/ovs-sandbox
Diffstat (limited to 'tutorial')
-rw-r--r-- | tutorial/Tutorial.md | 5 | ||||
-rwxr-xr-x | tutorial/ovs-sandbox | 39 |
2 files changed, 41 insertions, 3 deletions
diff --git a/tutorial/Tutorial.md b/tutorial/Tutorial.md index 1d8bbf5ec..1a38e4fed 100644 --- a/tutorial/Tutorial.md +++ b/tutorial/Tutorial.md @@ -118,6 +118,11 @@ This option can be handy for setting break points before ovs-vswitchd runs, 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. +In addition, a '-e' option also launches ovs-vswitchd under GDB. However, +instead of displaying a 'gdb>' prompt and waiting for user input, ovs-vswitchd +will start to execute immediately. '-r' option is the corresponding option +for running ovsdb-server under gdb with immediate execution. + 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 X windows, GDB support is effectively disabled. diff --git a/tutorial/ovs-sandbox b/tutorial/ovs-sandbox index e8339f264..02145de44 100755 --- a/tutorial/ovs-sandbox +++ b/tutorial/ovs-sandbox @@ -28,7 +28,10 @@ run_xterm() { rungdb() { under_gdb=$1 + gdb_run=$2 shift + shift + # Remove the --detach and to put the process under gdb control. # Also remove --vconsole:off to allow error message to show up # on the console. @@ -36,7 +39,13 @@ rungdb() { if $under_gdb && [ "$DISPLAY" ]; then args=`echo $@ |sed s/--detach//g | sed s/--vconsole:off//g` xterm_title=$1 - run_xterm $xterm_title gdb -ex run --args $args + + gdb_cmd="" + if $gdb_run; then + gdb_cmd="-ex run" + fi + + run_xterm $xterm_title gdb $gdb_cmd --args $args else run $@ fi @@ -44,6 +53,8 @@ rungdb() { gdb_vswitchd=false gdb_ovsdb=false +gdb_vswitchd_ex=false +gdb_ovsdb_ex=false gdb_ovn_northd=false gdb_ovn_controller=false builddir= @@ -134,9 +145,19 @@ EOF ;; -g|--gdb-v*) gdb_vswitchd=true + gdb_vswitchd_ex=false + ;; + -e|--gdb-ex-v*) + gdb_vswitchd=true + gdb_vswitchd_ex=true ;; -d|--gdb-ovsdb) gdb_ovsdb=true + gdb_ovsdb_ex=false + ;; + -r|--gdb-ex-o*) + gdb_ovsdb=true + gdb_ovsdb_ex=true ;; --gdb-ovn-northd) gdb_ovn_northd=true @@ -276,14 +297,26 @@ if $ovn; then run ovsdb-tool create ovnnb.db "$ovnnb_schema" ovsdb_server_args="ovnsb.db ovnnb.db conf.db" fi -rungdb $gdb_ovsdb ovsdb-server --detach --no-chdir --pidfile -vconsole:off --log-file \ +rungdb $gdb_ovsdb $gdb_ovsdb_ex ovsdb-server --detach --no-chdir --pidfile -vconsole:off --log-file \ --remote=punix:"$sandbox"/db.sock $ovsdb_server_args +#Add a small delay to allow ovsdb-server to launch. +sleep 0.1 + +#Wait for ovsdb-server to finish launching. +if test ! -e "$sandbox"/db.sock; then + echo -n "Waiting for ovsdb-server to start..." + while test ! -e "$sandbox"/db.sock; do + sleep 1; + done + echo " Done" +fi + # Initialize database. run ovs-vsctl --no-wait -- init # Start ovs-vswitchd. -rungdb $gdb_vswitchd ovs-vswitchd --detach --no-chdir --pidfile -vconsole:off --log-file \ +rungdb $gdb_vswitchd $gdb_vswitchd_ex ovs-vswitchd --detach --no-chdir --pidfile -vconsole:off --log-file \ --enable-dummy=override -vvconn -vnetdev_dummy if $ovn; then |