123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- #!/bin/sh
- # description: Test creation and deletion of trace instances
- if [ ! -d instances ] ; then
- echo "no instance directory with this kernel"
- exit_unsupported;
- fi
- fail() { # mesg
- rmdir x y z 2>/dev/null
- echo $1
- set -e
- exit $FAIL
- }
- cd instances
- # we don't want to fail on error
- set +e
- mkdir x
- rmdir x
- result=$?
- if [ $result -ne 0 ]; then
- echo "instance rmdir not supported"
- exit_unsupported
- fi
- instance_slam() {
- while :; do
- mkdir x
- mkdir y
- mkdir z
- rmdir x
- rmdir y
- rmdir z
- done 2>/dev/null
- }
- instance_slam &
- x=`jobs -l`
- p1=`echo $x | cut -d' ' -f2`
- echo $p1
- instance_slam &
- x=`jobs -l | tail -1`
- p2=`echo $x | cut -d' ' -f2`
- echo $p2
- instance_slam &
- x=`jobs -l | tail -1`
- p3=`echo $x | cut -d' ' -f2`
- echo $p3
- instance_slam &
- x=`jobs -l | tail -1`
- p4=`echo $x | cut -d' ' -f2`
- echo $p4
- instance_slam &
- x=`jobs -l | tail -1`
- p5=`echo $x | cut -d' ' -f2`
- echo $p5
- ls -lR >/dev/null
- sleep 1
- kill -1 $p1
- kill -1 $p2
- kill -1 $p3
- kill -1 $p4
- kill -1 $p5
- echo "Wait for processes to finish"
- wait $p1 $p2 $p3 $p4 $p5
- echo "all processes finished, wait for cleanup"
- mkdir x y z
- ls x y z
- rmdir x y z
- for d in x y z; do
- if [ -d $d ]; then
- fail "instance $d still exists"
- fi
- done
- set -e
- exit 0
|