8200126: [TESTBUG] Open source VM runtime signal tests
Open sourced the signal tests, updated make files and test groups accordingly Reviewed-by: dholmes, ctornqvi, ihse
This commit is contained in:
parent
ddc83cb0e4
commit
fc89e7ac24
@ -65,8 +65,11 @@ else
|
||||
exeinvoke.c exestack-gap.c
|
||||
endif
|
||||
|
||||
BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exesigtest := -ljvm
|
||||
|
||||
ifeq ($(OPENJDK_TARGET_OS), windows)
|
||||
BUILD_HOTSPOT_JTREG_EXECUTABLES_CFLAGS_exeFPRegs := -MT
|
||||
BUILD_HOTSPOT_JTREG_EXCLUDE += exesigtest.c
|
||||
endif
|
||||
|
||||
$(eval $(call SetupTestFilesCompilation, BUILD_HOTSPOT_JTREG_LIBRARIES, \
|
||||
|
@ -220,7 +220,8 @@ tier1_runtime = \
|
||||
-runtime/containers/ \
|
||||
sanity/ \
|
||||
testlibrary_tests/TestMutuallyExclusivePlatformPredicates.java \
|
||||
-:tier1_runtime_appcds_exclude
|
||||
-:tier1_runtime_appcds_exclude \
|
||||
-runtime/signal
|
||||
|
||||
hotspot_cds = \
|
||||
runtime/SharedArchiveFile/ \
|
||||
@ -263,7 +264,8 @@ hotspot_tier2_runtime = \
|
||||
-runtime/containers/ \
|
||||
-:tier1_runtime \
|
||||
-:tier1_serviceability \
|
||||
-:hotspot_tier2_runtime_platform_agnostic
|
||||
-:hotspot_tier2_runtime_platform_agnostic \
|
||||
-runtime/signal
|
||||
|
||||
hotspot_tier2_runtime_platform_agnostic = \
|
||||
runtime/SelectionResolution \
|
||||
|
59
test/hotspot/jtreg/runtime/signal/README
Normal file
59
test/hotspot/jtreg/runtime/signal/README
Normal file
@ -0,0 +1,59 @@
|
||||
Copyright (c) 2008, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
|
||||
This code is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License version 2 only, as
|
||||
published by the Free Software Foundation.
|
||||
|
||||
This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
version 2 for more details (a copy is included in the LICENSE file that
|
||||
accompanied this code).
|
||||
|
||||
You should have received a copy of the GNU General Public License version
|
||||
2 along with this work; if not, write to the Free Software Foundation,
|
||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
or visit www.oracle.com if you need additional information or have any
|
||||
questions.
|
||||
|
||||
|
||||
Briefly, the tests cover the following scenarios:
|
||||
1. prepre
|
||||
set signal handlers -> create JVM -> send signals -> destroy JVM -> check signal handlers were called
|
||||
|
||||
2. prepost
|
||||
set signal handlers -> create JVM -> destroy JVM -> send signals -> check signal handlers were called
|
||||
|
||||
3. postpre
|
||||
create JVM ->set signal handlers -> send signals -> destroy JVM -> check signal handlers were called
|
||||
|
||||
4. postpost
|
||||
create JVM -> set signal handlers -> destroy JVM -> send signals -> check signal handlers were called
|
||||
|
||||
There is one more scenario called 'nojvm'.
|
||||
In this case no jvm is created, so pure signal testing is done.
|
||||
|
||||
Signal handlers don't do anything, so the only fact that signal handler was called is checked.
|
||||
Also 2 different ways of setting signal handlers are tested: sigaction, sigset.
|
||||
|
||||
For 'postpre' and 'postpro' libjsig.so is used to chain signal handlers behind VM installed ones.
|
||||
|
||||
=> Current tests cover the following cases (don't count 'nojvm' scenario):
|
||||
1. Support for pre-installed signal handlers when the HotSpot VM is created.
|
||||
2. Support for signal handler installation after the HotSpot VM is created inside JNI code
|
||||
|
||||
|
||||
Notes:
|
||||
|
||||
SIGQUIT, SIGTERM, SIGINT, and SIGHUP signals cannot be chained.
|
||||
If the application needs to handle these signals, the -Xrs option needs
|
||||
to be specified. So, test these signals only with -Xrs flag.
|
||||
|
||||
On Linux and Mac OS X, SIGUSR2 is used to implement suspend and resume. So,
|
||||
don't test SIGUSR2 on Linux and Mac OS X.
|
||||
|
||||
SIGJVM1 and SIGJVM2 exist only on Solaris and are reserved for exclusive use
|
||||
by the JVM. So don't test SIGJVM1 and SIGJVM2.
|
178
test/hotspot/jtreg/runtime/signal/SigTestDriver.java
Normal file
178
test/hotspot/jtreg/runtime/signal/SigTestDriver.java
Normal file
@ -0,0 +1,178 @@
|
||||
/*
|
||||
* Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
import jdk.test.lib.Platform;
|
||||
import jdk.test.lib.Utils;
|
||||
import jdk.test.lib.process.OutputAnalyzer;
|
||||
import jdk.test.lib.process.ProcessTools;
|
||||
|
||||
import java.io.File;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
public class SigTestDriver {
|
||||
public static void main(String[] args) {
|
||||
// No signal tests on Windows yet; so setting to no-op
|
||||
if (Platform.isWindows()) {
|
||||
System.out.println("SKIPPED: no signal tests on Windows, ignore.");
|
||||
return;
|
||||
}
|
||||
|
||||
// At least one argument should be specified
|
||||
if ( (args == null) || (args.length < 1) ) {
|
||||
throw new IllegalArgumentException("At lease one argument should be specified, the signal name");
|
||||
}
|
||||
|
||||
String signame = args[0];
|
||||
switch (signame) {
|
||||
case "SIGWAITING":
|
||||
case "SIGKILL":
|
||||
case "SIGSTOP": {
|
||||
System.out.println("SKIPPED: signals SIGWAITING, SIGKILL and SIGSTOP can't be tested, ignore.");
|
||||
return;
|
||||
}
|
||||
case "SIGUSR2": {
|
||||
if (Platform.isLinux()) {
|
||||
System.out.println("SKIPPED: SIGUSR2 can't be tested on Linux, ignore.");
|
||||
return;
|
||||
} else if (Platform.isOSX()) {
|
||||
System.out.println("SKIPPED: SIGUSR2 can't be tested on OS X, ignore.");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Path test = Paths.get(System.getProperty("test.nativepath"))
|
||||
.resolve("sigtest")
|
||||
.toAbsolutePath();
|
||||
String envVar = Platform.isWindows() ? "PATH" :
|
||||
(Platform.isOSX() ? "DYLD_LIBRARY_PATH" : "LD_LIBRARY_PATH");
|
||||
|
||||
List<String> cmd = new ArrayList<>();
|
||||
Collections.addAll(cmd,
|
||||
test.toString(),
|
||||
"-sig",
|
||||
signame,
|
||||
"-mode",
|
||||
null, // modeIdx
|
||||
"-scenario",
|
||||
null // scenarioIdx
|
||||
);
|
||||
int modeIdx = 4;
|
||||
int scenarioIdx = 6;
|
||||
|
||||
// add external flags
|
||||
cmd.addAll(vmargs());
|
||||
|
||||
// add test specific arguments w/o signame
|
||||
cmd.addAll(Arrays.asList(args)
|
||||
.subList(1, args.length));
|
||||
|
||||
boolean passed = true;
|
||||
|
||||
for (String mode : new String[]{"sigset", "sigaction"}) {
|
||||
for (String scenario : new String[] {"nojvm", "prepre", "prepost", "postpre", "postpost"}) {
|
||||
cmd.set(modeIdx, mode);
|
||||
cmd.set(scenarioIdx, scenario);
|
||||
System.out.printf("START TESTING: SIGNAL = %s, MODE = %s, SCENARIO=%s%n",signame, mode, scenario);
|
||||
System.out.printf("Do execute: %s%n", cmd.toString());
|
||||
|
||||
ProcessBuilder pb = new ProcessBuilder(cmd);
|
||||
pb.environment().merge(envVar, jvmLibDir().toString(),
|
||||
(x, y) -> y + File.pathSeparator + x);
|
||||
pb.environment().put("CLASSPATH", Utils.TEST_CLASS_PATH);
|
||||
|
||||
switch (scenario) {
|
||||
case "postpre":
|
||||
case "postpost": {
|
||||
pb.environment().merge("LD_PRELOAD", libjsig().toString(),
|
||||
(x, y) -> y + File.pathSeparator + x);
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
OutputAnalyzer oa = ProcessTools.executeProcess(pb);
|
||||
oa.reportDiagnosticSummary();
|
||||
int exitCode = oa.getExitValue();
|
||||
if (exitCode == 0) {
|
||||
System.out.println("PASSED with exit code 0");
|
||||
} else {
|
||||
System.out.println("FAILED with exit code " + exitCode);
|
||||
passed = false;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
throw new Error("execution failed", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!passed) {
|
||||
throw new Error("test failed");
|
||||
}
|
||||
}
|
||||
|
||||
private static List<String> vmargs() {
|
||||
return Stream.concat(Arrays.stream(Utils.VM_OPTIONS.split(" ")),
|
||||
Arrays.stream(Utils.JAVA_OPTIONS.split(" ")))
|
||||
.filter(s -> !s.isEmpty())
|
||||
.filter(s -> s.startsWith("-X"))
|
||||
.flatMap(arg -> Stream.of("-vmopt", arg))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
private static Path libjsig() {
|
||||
return jvmLibDir().resolve((Platform.isWindows() ? "" : "lib")
|
||||
+ "jsig." + Platform.sharedLibraryExt());
|
||||
}
|
||||
|
||||
private static Path jvmLibDir() {
|
||||
Path dir = Paths.get(Utils.TEST_JDK);
|
||||
if (Platform.isWindows()) {
|
||||
return dir.resolve("bin")
|
||||
.resolve(variant())
|
||||
.toAbsolutePath();
|
||||
} else {
|
||||
return dir.resolve("lib")
|
||||
.resolve(variant())
|
||||
.toAbsolutePath();
|
||||
}
|
||||
}
|
||||
|
||||
private static String variant() {
|
||||
if (Platform.isServer()) {
|
||||
return "server";
|
||||
} else if (Platform.isClient()) {
|
||||
return "client";
|
||||
} else if (Platform.isMinimal()) {
|
||||
return "minimal";
|
||||
} else {
|
||||
throw new Error("TESTBUG: unsupported vm variant");
|
||||
}
|
||||
}
|
||||
}
|
35
test/hotspot/jtreg/runtime/signal/TestSigalrm.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigalrm.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigalrm01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGALRM
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigbus.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigbus.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigbus01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGBUS
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigcld.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigcld.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigcld01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGCLD
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigcont.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigcont.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigcont01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGCONT
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigemt.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigemt.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigemt01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGEMT
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigfpe.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigfpe.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigfpe01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGFPE
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigfreeze.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigfreeze.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigfreeze01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGFREEZE
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSighup.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSighup.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sighup01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGHUP -vmopt -XX:+PrintCommandLineFlags -vmopt -Xrs
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigill.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigill.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigill01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGILL
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigint.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigint.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigint01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGINT -vmopt -XX:+PrintCommandLineFlags -vmopt -Xrs
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigiot.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigiot.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigiot01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGIOT
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSiglost.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSiglost.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/siglost01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGLOST
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSiglwp.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSiglwp.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/siglwp01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGLWP
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigpipe.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigpipe.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigpipe01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGPIPE
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigpoll.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigpoll.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigpoll01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGPOLL
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigprof.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigprof.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigprof01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGPROF
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigpwr.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigpwr.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigpwr01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGPWR
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigquit.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigquit.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigquit01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGQUIT -vmopt -XX:+PrintCommandLineFlags -vmopt -Xrs
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigsegv.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigsegv.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigsegv01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGSEGV
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigstop.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigstop.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigstop01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGSTOP
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigsys.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigsys.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigsys01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGSYS
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigterm.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigterm.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigterm01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGTERM -vmopt -XX:+PrintCommandLineFlags -vmopt -Xrs
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigthaw.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigthaw.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigthaw01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGTHAW
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigtrap.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigtrap.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigtrap01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGTRAP
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigtstp.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigtstp.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigtstp01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGTSTP
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigttin.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigttin.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigttin01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGTTIN
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigttou.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigttou.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigttou01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGTTOU
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigurg.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigurg.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigurg01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGURG
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigusr1.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigusr1.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigusr101.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGUSR1
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigusr2.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigusr2.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigusr201.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGUSR2
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigvtalrm.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigvtalrm.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigvtalrm01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGVTALRM
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigwinch.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigwinch.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigwinch01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGWINCH
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigxcpu.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigxcpu.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigxcpu01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGXCPU
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigxfsz.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigxfsz.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigxfsz01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGXFSZ
|
||||
*/
|
||||
|
35
test/hotspot/jtreg/runtime/signal/TestSigxres.java
Normal file
35
test/hotspot/jtreg/runtime/signal/TestSigxres.java
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @requires os.family != "windows"
|
||||
*
|
||||
* @summary converted from VM testbase runtime/signal/sigxres01.
|
||||
* VM testbase keywords: [signal, runtime, linux, solaris, macosx]
|
||||
*
|
||||
* @library /test/lib
|
||||
* @run main/native SigTestDriver SIGXRES
|
||||
*/
|
||||
|
462
test/hotspot/jtreg/runtime/signal/exesigtest.c
Normal file
462
test/hotspot/jtreg/runtime/signal/exesigtest.c
Normal file
@ -0,0 +1,462 @@
|
||||
/*
|
||||
* Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
#include <jni.h>
|
||||
#include <signal.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
|
||||
/*
|
||||
* This is the main program to test the signal chaining/ handling functionality
|
||||
* See bugs 6277077 and 6414402
|
||||
*/
|
||||
|
||||
#define TRUE 1
|
||||
#define FALSE 0
|
||||
typedef int boolean;
|
||||
|
||||
static JNIEnv *env;
|
||||
static JavaVM *vm;
|
||||
|
||||
// static int sigid = 0;
|
||||
|
||||
// Define the test pass/ fail codes, may be we can use
|
||||
// nsk/share/native/native_consts.h in future
|
||||
static int TEST_PASSED=0;
|
||||
static int TEST_FAILED=1;
|
||||
|
||||
// This variable is used to notify whether signal has been received or not.
|
||||
static volatile sig_atomic_t sig_received = 0;
|
||||
|
||||
static char *mode = 0;
|
||||
static char *scenario = 0;
|
||||
static char *signal_name;
|
||||
static int signal_num = -1;
|
||||
|
||||
static JavaVMOption *options = 0;
|
||||
static int numOptions = 0;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
int sigNum;
|
||||
const char* sigName;
|
||||
} signalDefinition;
|
||||
|
||||
static signalDefinition signals[] =
|
||||
{
|
||||
{SIGINT, "SIGINT"},
|
||||
{SIGQUIT, "SIGQUIT"},
|
||||
{SIGILL, "SIGILL"},
|
||||
{SIGTRAP, "SIGTRAP"},
|
||||
{SIGIOT, "SIGIOT"},
|
||||
#ifdef SIGEMT
|
||||
{SIGEMT, "SIGEMT"},
|
||||
#endif
|
||||
{SIGFPE, "SIGFPE"},
|
||||
{SIGBUS, "SIGBUS"},
|
||||
{SIGSEGV, "SIGSEGV"},
|
||||
{SIGSYS, "SIGSYS"},
|
||||
{SIGPIPE, "SIGPIPE"},
|
||||
{SIGALRM, "SIGALRM"},
|
||||
{SIGTERM, "SIGTERM"},
|
||||
{SIGUSR1, "SIGUSR1"},
|
||||
{SIGUSR2, "SIGUSR2"},
|
||||
#ifdef SIGCLD
|
||||
{SIGCLD, "SIGCLD"},
|
||||
#endif
|
||||
#ifdef SIGPWR
|
||||
{SIGPWR, "SIGPWR"},
|
||||
#endif
|
||||
{SIGWINCH, "SIGWINCH"},
|
||||
{SIGURG, "SIGURG"},
|
||||
#ifdef SIGPOLL
|
||||
{SIGPOLL, "SIGPOLL"},
|
||||
#endif
|
||||
{SIGSTOP, "SIGSTOP"},
|
||||
{SIGTSTP, "SIGTSTP"},
|
||||
{SIGCONT, "SIGCONT"},
|
||||
{SIGTTIN, "SIGTTIN"},
|
||||
{SIGTTOU, "SIGTTOU"},
|
||||
{SIGVTALRM, "SIGVTALRM"},
|
||||
{SIGPROF, "SIGPROF"},
|
||||
{SIGXCPU, "SIGXCPU"},
|
||||
{SIGXFSZ, "SIGXFSZ"},
|
||||
#ifdef SIGWAITING
|
||||
{SIGWAITING, "SIGWAITING"},
|
||||
#endif
|
||||
#ifdef SIGLWP
|
||||
{SIGLWP, "SIGLWP"},
|
||||
#endif
|
||||
#ifdef SIGFREEZE
|
||||
{SIGFREEZE, "SIGFREEZE"},
|
||||
#endif
|
||||
#ifdef SIGTHAW
|
||||
{SIGTHAW, "SIGTHAW"},
|
||||
#endif
|
||||
#ifdef SIGLOST
|
||||
{SIGLOST, "SIGLOST"},
|
||||
#endif
|
||||
#ifdef SIGXRES
|
||||
{SIGXRES, "SIGXRES"},
|
||||
#endif
|
||||
{SIGHUP, "SIGHUP"}
|
||||
};
|
||||
|
||||
boolean isSupportedSigScenario ()
|
||||
{
|
||||
if ( (!strcmp(scenario, "nojvm")) || (!strcmp(scenario, "prepre")) || (!strcmp(scenario, "prepost")) ||
|
||||
(!strcmp(scenario, "postpost")) || (!strcmp(scenario, "postpre")) )
|
||||
{
|
||||
// printf("%s is a supported scenario\n", scenario);
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("ERROR: %s is not a supported scenario\n", scenario);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
boolean isSupportedSigMode ()
|
||||
{
|
||||
if ( (!strcmp(mode, "sigset")) || (!strcmp(mode, "sigaction")) )
|
||||
{
|
||||
// printf("%s is a supported mode\n", mode);
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("ERROR: %s is not a supported mode\n", mode);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
int getSigNumBySigName(const char* sigName)
|
||||
{
|
||||
int signals_len, sigdef_len, total_sigs, i=0;
|
||||
|
||||
if (sigName == NULL) return -1;
|
||||
|
||||
signals_len = sizeof(signals);
|
||||
sigdef_len = sizeof(signalDefinition);
|
||||
total_sigs = signals_len / sigdef_len;
|
||||
for (i = 0; i < total_sigs; i++)
|
||||
{
|
||||
// printf("Inside for loop, i = %d\n", i);
|
||||
if (!strcmp(sigName, signals[i].sigName))
|
||||
return signals[i].sigNum;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
// signal handler
|
||||
void handler(int sig)
|
||||
{
|
||||
printf("%s: signal handler for signal %d has been processed\n", signal_name, signal_num);
|
||||
sig_received = 1;
|
||||
}
|
||||
|
||||
// Initialize VM with given options
|
||||
void initVM()
|
||||
{
|
||||
JavaVMInitArgs vm_args;
|
||||
int i =0;
|
||||
jint result;
|
||||
|
||||
vm_args.nOptions = numOptions;
|
||||
vm_args.version = JNI_VERSION_1_2;
|
||||
vm_args.ignoreUnrecognized = JNI_FALSE;
|
||||
vm_args.options = options;
|
||||
|
||||
/* try hardcoding options
|
||||
JavaVMOption option1[2];
|
||||
option1[0].optionString="-XX:+PrintCommandLineFlags";
|
||||
option1[1].optionString="-Xrs";
|
||||
*/
|
||||
vm_args.options=options;
|
||||
vm_args.nOptions=numOptions;
|
||||
|
||||
// Print the VM options in use
|
||||
printf("initVM: numOptions = %d\n", vm_args.nOptions);
|
||||
for (i = 0; i < vm_args.nOptions; i++)
|
||||
{
|
||||
printf("\tvm_args.options[%d].optionString = %s\n", i, vm_args.options[i].optionString);
|
||||
}
|
||||
|
||||
// Initialize VM with given options
|
||||
result = JNI_CreateJavaVM( &vm, (void **) &env, &vm_args );
|
||||
|
||||
// Did the VM initialize successfully ?
|
||||
if (result != 0)
|
||||
{
|
||||
printf("ERROR: cannot create Java VM.\n");
|
||||
exit(TEST_FAILED);
|
||||
}
|
||||
|
||||
(*vm)->AttachCurrentThread(vm, (void **) &env, (void *) 0);
|
||||
printf("initVM: JVM started and attached\n");
|
||||
}
|
||||
|
||||
// Function to set up signal handler
|
||||
void setSignalHandler()
|
||||
{
|
||||
int retval = 0 ;
|
||||
|
||||
if (!strcmp(mode, "sigaction"))
|
||||
{
|
||||
struct sigaction act;
|
||||
act.sa_handler = handler;
|
||||
sigemptyset(&act.sa_mask);
|
||||
act.sa_flags = 0;
|
||||
retval = sigaction(signal_num, &act, 0);
|
||||
if (retval != 0) {
|
||||
printf("ERROR: failed to set signal handler using function %s, error=%s\n", mode, strerror(errno));
|
||||
exit(TEST_FAILED);
|
||||
}
|
||||
} // end - dealing with sigaction
|
||||
else if (!strcmp(mode, "sigset"))
|
||||
{
|
||||
sigset(signal_num, handler);
|
||||
} // end dealing with sigset
|
||||
printf("%s: signal handler using function '%s' has been set\n", signal_name, mode);
|
||||
}
|
||||
|
||||
// Function to invoke given signal
|
||||
void invokeSignal()
|
||||
{
|
||||
int pid, retval;
|
||||
sigset_t new_set, old_set;
|
||||
|
||||
pid = getpid();
|
||||
retval = 0;
|
||||
|
||||
// we need to unblock the signal in case it was previously blocked by JVM
|
||||
// and as result inherited by child process
|
||||
// (this is at least the case for SIGQUIT in case -Xrs flag is not used).
|
||||
// Otherwise the test will timeout.
|
||||
sigemptyset(&new_set);
|
||||
sigaddset(&new_set, signal_num);
|
||||
sigprocmask(SIG_UNBLOCK, &new_set, &old_set);
|
||||
if (retval != 0) {
|
||||
printf("ERROR: failed to unblock signal, error=%s\n", strerror(errno));
|
||||
exit(TEST_FAILED);
|
||||
}
|
||||
|
||||
// send the signal
|
||||
retval = kill(pid, signal_num);
|
||||
if (retval != 0)
|
||||
{
|
||||
printf("ERROR: failed to send signal %s, error=%s\n", signal_name, strerror(errno));
|
||||
exit(TEST_FAILED);
|
||||
}
|
||||
|
||||
// set original mask for the signal
|
||||
retval = sigprocmask(SIG_SETMASK, &old_set, NULL);
|
||||
if (retval != 0) {
|
||||
printf("ERROR: failed to set original mask for signal, error=%s\n", strerror(errno));
|
||||
exit(TEST_FAILED);
|
||||
}
|
||||
|
||||
printf("%s: signal has been sent successfully\n", signal_name);
|
||||
}
|
||||
|
||||
// Usage function
|
||||
void printUsage()
|
||||
{
|
||||
printf("Usage: sigtest -sig {signal_name} -mode {signal | sigset | sigaction } -scenario {nojvm | postpre | postpost | prepre | prepost}> [-vmopt jvm_option] \n");
|
||||
printf("\n");
|
||||
exit(TEST_FAILED);
|
||||
}
|
||||
|
||||
// signal handler BEFORE VM initialization AND
|
||||
// Invoke signal BEFORE VM exits
|
||||
void scen_prepre()
|
||||
{
|
||||
setSignalHandler();
|
||||
initVM();
|
||||
invokeSignal();
|
||||
(*vm)->DestroyJavaVM(vm);
|
||||
}
|
||||
|
||||
// signal handler BEFORE VM initialization AND
|
||||
// Invoke signal AFTER VM exits
|
||||
void scen_prepost()
|
||||
{
|
||||
setSignalHandler();
|
||||
initVM();
|
||||
(*vm)->DestroyJavaVM(vm);
|
||||
invokeSignal();
|
||||
}
|
||||
|
||||
// signal handler AFTER VM initialization AND
|
||||
// Invoke signal BEFORE VM exits
|
||||
void scen_postpre()
|
||||
{
|
||||
initVM();
|
||||
setSignalHandler();
|
||||
invokeSignal();
|
||||
(*vm)->DestroyJavaVM(vm);
|
||||
}
|
||||
|
||||
// signal handler AFTER VM initializationAND
|
||||
// Invoke signal AFTER VM exits
|
||||
void scen_postpost()
|
||||
{
|
||||
initVM();
|
||||
setSignalHandler();
|
||||
(*vm)->DestroyJavaVM(vm);
|
||||
invokeSignal();
|
||||
}
|
||||
|
||||
// signal handler with no JVM in picture
|
||||
void scen_nojvm()
|
||||
{
|
||||
setSignalHandler();
|
||||
invokeSignal();
|
||||
}
|
||||
|
||||
void run()
|
||||
{
|
||||
// print the current scenario
|
||||
if (!strcmp(scenario, "postpre"))
|
||||
scen_postpre();
|
||||
else if (!strcmp(scenario, "postpost"))
|
||||
scen_postpost();
|
||||
else if (!strcmp(scenario, "prepre"))
|
||||
scen_prepre();
|
||||
else if (!strcmp(scenario, "prepost"))
|
||||
scen_prepost();
|
||||
else if (!strcmp(scenario, "nojvm"))
|
||||
scen_nojvm();
|
||||
}
|
||||
|
||||
// main main
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
int i=0, j;
|
||||
|
||||
signal_num = -1;
|
||||
signal_name = NULL;
|
||||
|
||||
// Parse the arguments and find out how many vm args we have
|
||||
for (i=1; i<argc; i++)
|
||||
{
|
||||
if (! strcmp(argv[i], "-sig") )
|
||||
{
|
||||
i++;
|
||||
if ( i >= argc )
|
||||
{
|
||||
printUsage();
|
||||
}
|
||||
signal_name = argv[i];
|
||||
|
||||
}
|
||||
else if (!strcmp(argv[i], "-mode"))
|
||||
{
|
||||
i++;
|
||||
if ( i >= argc )
|
||||
{
|
||||
printUsage();
|
||||
}
|
||||
mode = argv[i];
|
||||
}
|
||||
else if (!strcmp(argv[i], "-scenario"))
|
||||
{
|
||||
i++;
|
||||
if ( i >= argc )
|
||||
{
|
||||
printUsage();
|
||||
}
|
||||
scenario = argv[i];
|
||||
}
|
||||
else if (!strcmp(argv[i], "-vmopt"))
|
||||
{
|
||||
i++;
|
||||
if ( i >= argc )
|
||||
{
|
||||
printUsage();
|
||||
}
|
||||
numOptions++;
|
||||
}
|
||||
else
|
||||
{
|
||||
printUsage();
|
||||
}
|
||||
}
|
||||
|
||||
if ( !isSupportedSigScenario() || !isSupportedSigMode() )
|
||||
{
|
||||
printUsage();
|
||||
}
|
||||
|
||||
// get signal number by it's name
|
||||
signal_num = getSigNumBySigName(signal_name);
|
||||
if (signal_num == -1)
|
||||
{
|
||||
printf("%s: unknown signal, perhaps is not supported on this platform, ignore\n",
|
||||
signal_name);
|
||||
exit(TEST_PASSED);
|
||||
}
|
||||
|
||||
j = 0;
|
||||
// Initialize given number of VM options
|
||||
if (numOptions > 0)
|
||||
{
|
||||
options = (JavaVMOption *) malloc(numOptions * sizeof(JavaVMOption));
|
||||
for (i=0; i<argc; i++)
|
||||
{
|
||||
// parse VM options
|
||||
if (!strcmp(argv[i], "-vmopt"))
|
||||
{
|
||||
i++;
|
||||
if ( i >= argc )
|
||||
{
|
||||
printUsage();
|
||||
}
|
||||
options[j].optionString = argv[i];
|
||||
j++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// do signal invocation
|
||||
printf("%s: start testing: signal_num=%d, mode=%s, scenario=%s\n", signal_name, signal_num, mode, scenario);
|
||||
run();
|
||||
|
||||
while (!sig_received) {
|
||||
sleep(1);
|
||||
printf("%s: waiting for getting signal 1sec ...\n", signal_name);
|
||||
}
|
||||
|
||||
printf("%s: signal has been received\n", signal_name);
|
||||
|
||||
free(options);
|
||||
|
||||
return (sig_received ? TEST_PASSED : TEST_FAILED);
|
||||
}
|
Loading…
Reference in New Issue
Block a user