diff options
author | hunt <hunt> | 2005-08-03 19:03:03 +0000 |
---|---|---|
committer | hunt <hunt> | 2005-08-03 19:03:03 +0000 |
commit | 4515ee3f0e745fde9117baf36c5053216326c9a7 (patch) | |
tree | 1f7ef5e85ba11e311ea9345fb72c950c269917e3 /stp_check | |
parent | 416730778dd315b64b1f443e5396685c9d0078cd (diff) | |
download | systemtap-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_check | 67 |
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 + |