summaryrefslogtreecommitdiffstats
path: root/stp_check
diff options
context:
space:
mode:
authorhunt <hunt>2005-08-03 19:03:03 +0000
committerhunt <hunt>2005-08-03 19:03:03 +0000
commit4515ee3f0e745fde9117baf36c5053216326c9a7 (patch)
tree1f7ef5e85ba11e311ea9345fb72c950c269917e3 /stp_check
parent416730778dd315b64b1f443e5396685c9d0078cd (diff)
downloadsystemtap-steved-4515ee3f0e745fde9117baf36c5053216326c9a7.tar.gz
systemtap-steved-4515ee3f0e745fde9117baf36c5053216326c9a7.tar.xz
systemtap-steved-4515ee3f0e745fde9117baf36c5053216326c9a7.zip
2005-08-03 Martin Hunt <hunt@redhat.com>
* configure.ac: Add stp_check to AC_CONFIG_FILES. * stp_check.in : New file.
Diffstat (limited to 'stp_check')
-rw-r--r--stp_check67
1 files changed, 67 insertions, 0 deletions
diff --git a/stp_check b/stp_check
new file mode 100644
index 00000000..0c49d3e7
--- /dev/null
+++ b/stp_check
@@ -0,0 +1,67 @@
+#!/bin/bash
+
+load_module()
+{
+ ret=1
+ if [ -e "$MODULE" ]
+ then
+ /sbin/insmod $MODULE
+ ret=$?
+ fi
+
+ if [ "$ret" -ne 0 ]
+ then
+ echo "$MODULE_NAME not in kernel and not built. Compiling..."
+ make -w -C $MODULE_DIR
+ if [ "$?" -ne 0 ]
+ then
+ echo "Failed to load module $MODULE_NAME."
+ exit $?
+ fi
+
+ /sbin/insmod $MODULE
+ if [ "$?" -ne 0 ]
+ then
+ echo "Failed to load module $MODULE_NAME."
+ exit $?
+ fi
+ fi
+}
+
+VAR_DIR=${prefix}/var/lib/systemtap
+RELAYFS_DIR=$VAR_DIR/relayfs
+STP_CONTROL_DIR=$VAR_DIR/transport
+
+RELAYFS=`grep " relayfs_poll" /boot/System.map-\`uname -r\``
+if [ -z "$RELAYFS" ]
+then
+ RELAYFS=`lsmod | grep relayfs`
+ if [ -z "$RELAYFS" ]
+ then
+ MODULE_NAME=relayfs
+ MODULE_DIR=$RELAYFS_DIR
+ MODULE=$MODULE_DIR/relayfs.ko
+ load_module
+ fi
+fi
+
+if [ ! -d "/mnt/relay" ]
+then
+ mkdir /mnt/relay
+fi
+
+MOUNT=`mount | grep relayfs |awk '{print $1}'`
+if [ "$MOUNT" != "relayfs" ]
+then
+ mount -t relayfs relayfs /mnt/relay
+fi
+
+STP_CONTROL=`lsmod | grep stp_control |awk '{print $1}'`
+if [ "$STP_CONTROL" != "stp_control" ]
+then
+ MODULE_NAME=stp-control
+ MODULE_DIR=$STP_CONTROL_DIR
+ MODULE=$MODULE_DIR/stp-control.ko
+ load_module
+fi
+