X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=utilities%2Fovs-lib.in;h=d010abfe45c8ce5d9c0c3b3a2eb40b35b330cb72;hb=46528f78e5c0b7484e1735bb774ef2ad92e04593;hp=f8e26091c5c3619a750b4205ed5b4097ad7ac185;hpb=287e3bc0ae88b7fe8cb09561be7cf2e0a0aa4920;p=sliver-openvswitch.git diff --git a/utilities/ovs-lib.in b/utilities/ovs-lib.in index f8e26091c..d010abfe4 100644 --- a/utilities/ovs-lib.in +++ b/utilities/ovs-lib.in @@ -28,8 +28,24 @@ datadir=${OVS_PKGDATADIR-'@pkgdatadir@'} # /usr/share/openvswitch bindir=${OVS_BINDIR-'@bindir@'} # /usr/bin sbindir=${OVS_SBINDIR-'@sbindir@'} # /usr/sbin +# /etc/openvswitch or /var/lib/openvswitch +if test X"$OVS_DBDIR" != X; then + dbdir=$OVS_DBDIR +elif test X"$OVS_SYSCONFDIR" != X; then + dbdir=$OVS_SYSCONFDIR/openvswitch +else + dbdir='@DBDIR@' +fi + +ovs_ctl () { + echo "`date -u`:$@" >> "${logdir}/ovs-ctl.log" + "${datadir}/scripts/ovs-ctl" "$@" 2>&1 | tee -a "${logdir}/ovs-ctl.log" +} + VERSION='@VERSION@' +DAEMON_CWD=/ + LC_ALL=C; export LC_ALL ## ------------- ## @@ -91,6 +107,7 @@ start_daemon () { wrapper=$2 shift; shift daemon=$1 + strace="" # drop core files in a sensible place test -d "$DAEMON_CWD" || install -d -m 755 -o root -g root "$DAEMON_CWD" @@ -118,11 +135,19 @@ start_daemon () { ;; strace) if (strace -V) > /dev/null 2>&1; then - set strace -D -ff -o "$logdir/$daemon.strace.log" "$@" + strace="strace -tt -T -s 256 -ff" + if (strace -DV) > /dev/null 2>&1; then + # Has the -D option. + set $strace -D -o "$logdir/$daemon.strace.log" "$@" + strace="" + fi else log_failure_msg "strace not installed, running $daemon without it" fi ;; + glibc) + set env MALLOC_CHECK_=2 MALLOC_PERTURB_=165 "$@" + ;; '') ;; *) @@ -136,9 +161,14 @@ start_daemon () { fi action "Starting $daemon" "$@" + + if test X"$strace" != X; then + # Strace doesn't have the -D option so we attach after the fact. + setsid $strace -o "$logdir/$daemon.strace.log" \ + -p `cat $rundir/$daemon.pid` > /dev/null 2>&1 & + fi } -DAEMON_CWD=/ stop_daemon () { if test -e "$rundir/$1.pid"; then if pid=`cat "$rundir/$1.pid"`; then