blob: cc0a44065dede6c744f2b2fb706929379256f3dd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# kill tests, or command, will not when /proc is missing.
test -d /proc || ts_skip "/proc not available"
# The test_sigreceive is ready when signal process mask contains SIGHUP
function check_test_sigreceive {
local rc=0
local pid=$1
for i in 0.01 0.1 1 1 1 1; do
if [ ! -f /proc/$pid/status ]; then
# The /proc exists, but not status file. Because the
# process already started it is unlikely the file would
# appear after any amount of waiting. Try to sleep for
# moment and hopefully test_sigreceive is ready to be
# killed.
echo "kill_functions.sh: /proc/$pid/status: No such file or directory"
sleep 2
rc=1
break
fi
sigmask=$((16#$( awk '/SigCgt/ { print $2}' /proc/$pid/status) ))
if [ $(( $sigmask & 1 )) == 1 ]; then
rc=1
break
fi
sleep $i
done
return $rc
}
|