summaryrefslogtreecommitdiffstats
path: root/stp_check.in
diff options
context:
space:
mode:
authortrz <trz>2006-03-15 16:14:09 +0000
committertrz <trz>2006-03-15 16:14:09 +0000
commit5b1cd012831a6b729422e34cf0ed616600613771 (patch)
tree069912a0908ebcc8f3e7f80fa5f18bb5c510a34b /stp_check.in
parent9e0abebdf8aca24910b68ed35107926aab91443b (diff)
downloadsystemtap-steved-5b1cd012831a6b729422e34cf0ed616600613771.tar.gz
systemtap-steved-5b1cd012831a6b729422e34cf0ed616600613771.tar.xz
systemtap-steved-5b1cd012831a6b729422e34cf0ed616600613771.zip
Fix for bug #2406 (autodetect supported relayfs versions)
Diffstat (limited to 'stp_check.in')
-rwxr-xr-xstp_check.in48
1 files changed, 8 insertions, 40 deletions
diff --git a/stp_check.in b/stp_check.in
index defc0a62..6e429b91 100755
--- a/stp_check.in
+++ b/stp_check.in
@@ -1,46 +1,9 @@
#!/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..."
- mkdir -p $MODULE_DIR
- cp -dpr $SRC_DIR/* $MODULE_DIR
- 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
-}
-
-prefix=@prefix@
-VAR_DIR=@localstatedir@/cache/systemtap
-
-RELAYFS=`grep relayfs /proc/filesystems`
-if [ -z "$RELAYFS" ]
+RELAY=`grep sysfs_create_relay_file /proc/kallsyms`
+if [ -n "$RELAY" ]
then
- MODULE_NAME=relayfs
- MODULE_DIR=$VAR_DIR/relayfs
- MODULE=$MODULE_DIR/relayfs.ko
- SRC_DIR=@datadir@/systemtap/runtime/relayfs
- load_module
+ exit 0
fi
if [ ! -d "/mnt/relay" ]
@@ -54,3 +17,8 @@ then
mount -t relayfs relayfs /mnt/relay
fi
+RELAYFS_FS=`grep relayfs /proc/kallsyms`
+if [ -z "$RELAYFS_FS" ]
+then
+ exit 1
+fi