Mercurial > hg > truffle
annotate test/runtime/jsig/Test8017498.sh @ 13423:eae426d683f6
8029190: VM_Version::determine_features() asserts on Fujitsu Sparc64 CPUs
Summary: fix code to allow testing on Fujitsu Sparc64 CPUs
Reviewed-by: kvn
author | simonis |
---|---|
date | Mon, 02 Dec 2013 11:12:32 +0100 |
parents | e567d5afd4dd |
children | d85f79f0c476 |
rev | line source |
---|---|
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
1 #!/bin/sh |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
2 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
3 # |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
4 # Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
5 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
6 # |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
7 # This code is free software; you can redistribute it and/or modify it |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
8 # under the terms of the GNU General Public License version 2 only, as |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
9 # published by the Free Software Foundation. |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
10 # |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
11 # This code is distributed in the hope that it will be useful, but WITHOUT |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
14 # version 2 for more details (a copy is included in the LICENSE file that |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
15 # accompanied this code). |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
16 # |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
17 # You should have received a copy of the GNU General Public License version |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
18 # 2 along with this work; if not, write to the Free Software Foundation, |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
20 # |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
22 # or visit www.oracle.com if you need additional information or have any |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
23 # questions. |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
24 # |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
25 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
26 ## |
13402
e567d5afd4dd
8028160: [TESTBUG] Exclude failing (runtime) jtreg tests using @ignore
hseigel
parents:
11967
diff
changeset
|
27 ## @ignore 8028806 |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
28 ## @test Test8017498.sh |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
29 ## @bug 8017498 |
11160
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
30 ## @bug 8020791 |
11967
f9ee986a9fea
8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents:
11160
diff
changeset
|
31 ## @bug 8021296 |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
32 ## @summary sigaction(sig) results in process hang/timed-out if sig is much greater than SIGRTMAX |
11160
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
33 ## @run shell/timeout=30 Test8017498.sh |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
34 ## |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
35 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
36 if [ "${TESTSRC}" = "" ] |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
37 then |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
38 TESTSRC=${PWD} |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
39 echo "TESTSRC not set. Using "${TESTSRC}" as default" |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
40 fi |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
41 echo "TESTSRC=${TESTSRC}" |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
42 ## Adding common setup Variables for running shell tests. |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
43 . ${TESTSRC}/../../test_env.sh |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
44 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
45 # set platform-dependent variables |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
46 OS=`uname -s` |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
47 case "$OS" in |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
48 Linux) |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
49 echo "Testing on Linux" |
11967
f9ee986a9fea
8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents:
11160
diff
changeset
|
50 gcc_cmd=`which gcc` |
f9ee986a9fea
8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents:
11160
diff
changeset
|
51 if [ "x$gcc_cmd" == "x" ]; then |
f9ee986a9fea
8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents:
11160
diff
changeset
|
52 echo "WARNING: gcc not found. Cannot execute test." 2>&1 |
f9ee986a9fea
8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents:
11160
diff
changeset
|
53 exit 0; |
f9ee986a9fea
8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents:
11160
diff
changeset
|
54 fi |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
55 if [ "$VM_BITS" = "64" ] |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
56 then |
11160
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
57 MY_LD_PRELOAD=${TESTJAVA}${FS}jre${FS}lib${FS}amd64${FS}libjsig.so |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
58 else |
11160
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
59 MY_LD_PRELOAD=${TESTJAVA}${FS}jre${FS}lib${FS}i386${FS}libjsig.so |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
60 fi |
11160
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
61 echo MY_LD_PRELOAD = ${MY_LD_PRELOAD} |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
62 ;; |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
63 *) |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
64 echo "Test passed; only valid for Linux" |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
65 exit 0; |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
66 ;; |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
67 esac |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
68 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
69 THIS_DIR=. |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
70 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
71 cp ${TESTSRC}${FS}*.java ${THIS_DIR} |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
72 ${TESTJAVA}${FS}bin${FS}javac *.java |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
73 |
11967
f9ee986a9fea
8021296: [TESTBUG] Test8017498.sh fails to find "gcc" and fails to compile on some Linux releases
ccheung
parents:
11160
diff
changeset
|
74 $gcc_cmd -DLINUX -fPIC -shared \ |
11160
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
75 -o ${TESTSRC}${FS}libTestJNI.so \ |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
76 -I${TESTJAVA}${FS}include \ |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
77 -I${TESTJAVA}${FS}include${FS}linux \ |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
78 ${TESTSRC}${FS}TestJNI.c |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
79 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
80 # run the java test in the background |
11160
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
81 cmd="LD_PRELOAD=$MY_LD_PRELOAD \ |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
82 ${TESTJAVA}${FS}bin${FS}java \ |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
83 -Djava.library.path=${TESTSRC}${FS} -server TestJNI 100" |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
84 echo "$cmd > test.out 2>&1" |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
85 eval $cmd > test.out 2>&1 |
11147
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
86 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
87 grep "old handler" test.out > ${NULL} |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
88 if [ $? = 0 ] |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
89 then |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
90 echo "Test Passed" |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
91 exit 0 |
732af649bc3a
8017498: JVM crashes when native code calls sigaction(sig) where sig>=0x20
ccheung
parents:
diff
changeset
|
92 fi |
11160
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
93 |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
94 echo "Test Failed" |
72727c4b6dec
8020791: [TESTBUG] runtime/jsig/Test8017498.sh failed to compile native code
ccheung
parents:
11147
diff
changeset
|
95 exit 1 |