1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0 3# description: Test creation and deletion of trace instances 4# requires: instances 5 6fail() { # mesg 7 rmdir x y z 2>/dev/null 8 echo $1 9 set -e 10 exit_fail 11} 12 13cd instances 14 15# we don't want to fail on error 16set +e 17 18mkdir x 19rmdir x 20result=$? 21 22if [ $result -ne 0 ]; then 23 echo "instance rmdir not supported" 24 exit_unsupported 25fi 26 27instance_slam() { 28 while :; do 29 mkdir x 30 mkdir y 31 mkdir z 32 rmdir x 33 rmdir y 34 rmdir z 35 done 2>/dev/null 36} 37 38instance_slam & 39p1=$! 40echo $p1 41 42instance_slam & 43p2=$! 44echo $p2 45 46instance_slam & 47p3=$! 48echo $p3 49 50instance_slam & 51p4=$! 52echo $p4 53 54instance_slam & 55p5=$! 56echo $p5 57 58ls -lR >/dev/null 59sleep 1 60 61kill -1 $p1 62kill -1 $p2 63kill -1 $p3 64kill -1 $p4 65kill -1 $p5 66 67echo "Wait for processes to finish" 68wait $p1 $p2 $p3 $p4 $p5 69echo "all processes finished, wait for cleanup" 70 71mkdir x y z 72ls x y z 73rmdir x y z 74for d in x y z; do 75 if [ -d $d ]; then 76 fail "instance $d still exists" 77 fi 78done 79 80set -e 81 82exit 0 83