X-Git-Url: https://git.liburcu.org/?p=ltt-control.git;a=blobdiff_plain;f=lttctl%2Fltt-disarmall.sh;fp=lttctl%2Fltt-disarmall.sh;h=d60a54eee50cd45546e269d8dd4b00f56b4743bd;hp=56dc3a0b1e48644caae856da3849b4a9061ed7c1;hb=88f304c9f43f25b0d0a5273bf9ff2a4a9ebd3988;hpb=efd72b5d61b85de373b987aa768de315419d4a83 diff --git a/lttctl/ltt-disarmall.sh b/lttctl/ltt-disarmall.sh index 56dc3a0..d60a54e 100755 --- a/lttctl/ltt-disarmall.sh +++ b/lttctl/ltt-disarmall.sh @@ -17,6 +17,8 @@ DEBUGFSROOT=$(awk '{if ($3 == "debugfs") print $2}' /proc/mounts | head -n 1) MARKERSROOT=${DEBUGFSROOT}/ltt/markers +DEFAULTMODULES="ltt-trace-control ltt-marker-control ltt-kprobes ltt-userspace-event ltt-statedump ipc-trace kernel-trace mm-trace net-trace fs-trace jbd2-trace syscall-trace trap-trace block-trace rcu-trace ltt-relay ltt-tracer" +EXTRAMODULES="lockdep-trace net-extended-trace" usage () { echo "Usage: $0 [OPTION]..." > /dev/stderr @@ -28,6 +30,11 @@ usage () { echo "" > /dev/stderr } +if [ "$(id -u)" != "0" ]; then + echo "Error: This script needs to be run as root." > /dev/stderr + exit 1; +fi + if [ ! "${DEBUGFSROOT}" ]; then echo "Error: debugfs not mounted" > /dev/stderr exit 1; @@ -59,3 +66,12 @@ shift $((${OPTIND} - 1)) fi echo 0 > ${marker} done + +#Unload the kernel modules +for i in ${EXTRAMODULES}; do + rmmod $i 2> /dev/null +done +for i in ${DEFAULTMODULES}; do + rmmod $i +done +