blob: 587bb4650e9cddd4bedcc0036d1070e2a519b840 [file] [log] [blame]
#!/bin/sh -x
name=oprofile
prefixes="/usr"
for prefix in ${prefixes}; do
if [ ! -d ${prefix} ]; then
echo "$0: bad prefix: '${prefix}'"
echo "$0: -- ${name} FAILED --"
exit 1
fi
dir=${prefix}/bin
if [ ! -d ${dir} ]; then
echo "$0: can't find root dir: '${dir}'"
echo "$0: -- ${name} FAILED --"
exit 1
fi
prog=${dir}/opcontrol
if [ ! -f ${prog} ] ; then
echo "$0: can't find progam: '${prog}'"
echo "$0: -- ${name} FAILED --"
exit 1
fi
prog=${dir}/opreport
if [ ! -f ${prog} ] ; then
echo "$0: can't find progam: '${prog}'"
echo "$0: -- ${name} FAILED --"
exit 1
fi
time=`date +%y.%m.%d-%H.%M.%S`
log=/root/${name}-dump-`hostname`-`uname -r`-${time}.dmp
echo "$0: root dir = '${dir}'"
echo "$0: log = '$log'"
${dir}/opcontrol --shutdown
${dir}/opcontrol --reset
${dir}/opcontrol --reset
rm -rf /var/lib/oprofile/*
if [ ! -f /boot/vmlinux ] ; then
echo "$0: can't find: '/boot/vmlinux'"
echo "$0: -- ${name} FAILED --"
exit 1
fi
${dir}/opcontrol --vmlinux=/boot/vmlinux
if [ $? -ne 0 ]; then
echo "$0: opcontrol --vmlinux failed."
echo "$0: -- ${name} FAILED --"
exit -1
fi
${dir}/opcontrol --event=cache_hit:10000 --event=cache_miss:10000
if [ $? -ne 0 ]; then
echo "$0: opcontrol --event=cache_hit:10000 --event=cache_miss:10000 failed."
fi
${dir}/opcontrol --verbose --start
if [ $? -ne 0 ]; then
echo "$0: opcontrol --start failed."
echo "$0: -- ${name} FAILED --"
exit -1
fi
echo sleeping 25 sec...
sleep 25
${dir}/opcontrol --dump
if [ $? -ne 0 ]; then
echo "$0: opcontrol --dump failed."
echo "$0: -- ${name} FAILED --"
exit -1
fi
${dir}/opreport
if [ $? -ne 0 ]; then
echo "$0: opreport failed."
echo "$0: -- ${name} FAILED --"
exit -1
fi
${dir}/opcontrol --shutdown
${dir}/opcontrol --reset
${dir}/opcontrol --reset
rm -rf /var/lib/oprofile/*
echo "$0: ++ ${name} OK ++"
done
exit 0