• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/bin/sh
2# SPDX-License-Identifier: GPL-2.0-or-later
3
4###############################################################################
5#
6#   Copyright © International Business Machines  Corp., 2009
7#
8# DESCRIPTION
9#      Run tests in the current directory.
10#
11# AUTHOR
12#      Darren Hart <dvhart@linux.intel.com>
13#
14# HISTORY
15#      2009-Nov-9: Initial version by Darren Hart <dvhart@linux.intel.com>
16#      2010-Jan-6: Add futex_wait_uninitialized_heap and futex_wait_private_mapped_file
17#                  by KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
18#
19###############################################################################
20
21run_test()
22{
23    $@
24    ret=$?
25    if [ $ret -ne 0 ] && [ $ret -ne 4 ]; then  # KSFT_SKIP=4
26        echo "Failed with $ret"
27        rc=1
28    fi
29}
30
31# Test for a color capable console
32if [ -z "$USE_COLOR" ]; then
33    tput setf 7 || tput setaf 7
34    if [ $? -eq 0 ]; then
35        USE_COLOR=1
36        tput sgr0
37    fi
38fi
39if [ "$USE_COLOR" -eq 1 ]; then
40    COLOR="-c"
41fi
42
43rc=0
44
45echo
46# requeue pi testing
47# without timeouts
48run_test ./futex_requeue_pi $COLOR
49run_test ./futex_requeue_pi $COLOR -b
50run_test ./futex_requeue_pi $COLOR -b -l
51run_test ./futex_requeue_pi $COLOR -b -o
52run_test ./futex_requeue_pi $COLOR -l
53run_test ./futex_requeue_pi $COLOR -o
54# with timeouts
55run_test ./futex_requeue_pi $COLOR -b -l -t 5000
56run_test ./futex_requeue_pi $COLOR -l -t 5000
57run_test ./futex_requeue_pi $COLOR -b -l -t 500000
58run_test ./futex_requeue_pi $COLOR -l -t 500000
59run_test ./futex_requeue_pi $COLOR -b -t 5000
60run_test ./futex_requeue_pi $COLOR -t 5000
61run_test ./futex_requeue_pi $COLOR -b -t 500000
62run_test ./futex_requeue_pi $COLOR -t 500000
63run_test ./futex_requeue_pi $COLOR -b -o -t 5000
64run_test ./futex_requeue_pi $COLOR -l -t 5000
65run_test ./futex_requeue_pi $COLOR -b -o -t 500000
66run_test ./futex_requeue_pi $COLOR -l -t 500000
67# with long timeout
68run_test ./futex_requeue_pi $COLOR -b -l -t 2000000000
69run_test ./futex_requeue_pi $COLOR -l -t 2000000000
70
71
72echo
73run_test ./futex_requeue_pi_mismatched_ops $COLOR
74
75echo
76run_test ./futex_requeue_pi_signal_restart $COLOR
77
78echo
79run_test ./futex_wait_timeout $COLOR
80
81echo
82run_test ./futex_wait_wouldblock $COLOR
83
84echo
85run_test ./futex_wait_uninitialized_heap $COLOR
86run_test ./futex_wait_private_mapped_file $COLOR
87
88# b/234151152
89# Disable because system v shared memory not available
90#echo
91#run_test ./futex_wait $COLOR
92
93echo
94run_test ./futex_requeue $COLOR
95
96# b/234151152
97# Disable because system v shared memory not available
98#echo
99#run_test ./futex_waitv $COLOR
100
101exit $rc
102