Unify ltt-armall* scripts
[ltt-control.git] / lttctl / ltt-disarmall.sh
1 #!/bin/bash
2 # Copyright (C) 2009 Benjamin Poirier
3
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
13
14 # You should have received a copy of the GNU General Public License along
15 # with this program; if not, write to the Free Software Foundation, Inc.,
16 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17
18 DEBUGFSROOT=$(grep ^debugfs /proc/mounts | head -1 | awk '{print $2}')
19 MARKERSROOT=${DEBUGFSROOT}/ltt/markers
20
21 usage () {
22 echo "Usage: $0 [OPTION]..." > /dev/stderr
23 echo "Disconnect lttng markers" > /dev/stderr
24 echo "" > /dev/stderr
25 echo "Options:" > /dev/stderr
26 printf "\t-q Quiet mode, suppress output\n" > /dev/stderr
27 printf "\t-h Print this help\n" > /dev/stderr
28 echo "" > /dev/stderr
29 }
30
31 if [ ! "$DEBUGFSROOT" ]; then
32 echo "Error: debugfs not mounted" > /dev/stderr
33 exit 1;
34 fi
35
36 if [ ! -d "$MARKERSROOT" ]; then
37 echo "Error: LTT trace controller not found (did you compile and load LTTng?)" > /dev/stderr
38 exit 1;
39 fi
40
41 while getopts "qh" options; do
42 case $options in
43 q) QUIET="0";;
44 h) usage;
45 exit 0;;
46 \?) usage;
47 exit 1;;
48 esac
49 done
50 shift $(($OPTIND - 1))
51
52 while read -r -d $'\0' marker; do
53 grep "^1$" "$marker" -q
54 if [ $? -ne 0 ]; then
55 continue
56 fi
57 if [ ! $QUIET ]; then
58 echo "Disconnecting ${marker%/enable}"
59 fi
60 echo 0 > $marker
61 done < <(eval "find '$MARKERSROOT' -name metadata -prune -o -name enable -print0")
This page took 0.030632 seconds and 4 git commands to generate.