< prev index next >

test/hotspot/jtreg/gc/ergonomics/TestInitialGCThreadLogging.java

Print this page
rev 52710 : Upstream/backport Shenandoah to JDK11u

*** 1,7 **** /* ! * Copyright (c) 2015, 2016, 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. --- 1,7 ---- /* ! * Copyright (c) 2015, 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.
*** 27,59 **** * @summary Check trace logging of initial GC threads. * @requires vm.gc=="null" * @key gc * @modules java.base/jdk.internal.misc * @library /test/lib */ import jdk.test.lib.process.ProcessTools; import jdk.test.lib.process.OutputAnalyzer; public class TestInitialGCThreadLogging { public static void main(String[] args) throws Exception { testInitialGCThreadLogging("UseConcMarkSweepGC", "GC Thread"); testInitialGCThreadLogging("UseG1GC", "GC Thread"); testInitialGCThreadLogging("UseParallelGC", "ParGC Thread"); } private static void verifyDynamicNumberOfGCThreads(OutputAnalyzer output, String threadName) { output.shouldHaveExitValue(0); // test should run succesfully output.shouldContain(threadName); } private static void testInitialGCThreadLogging(String gcFlag, String threadName) throws Exception { // UseDynamicNumberOfGCThreads and TraceDynamicGCThreads enabled ! String[] baseArgs = {"-XX:+" + gcFlag, "-Xmx10M", "-XX:+UseDynamicNumberOfGCThreads", "-Xlog:gc+task=trace", "-version"}; // Base test with gc and +UseDynamicNumberOfGCThreads: ProcessBuilder pb_enabled = ProcessTools.createJavaProcessBuilder(baseArgs); verifyDynamicNumberOfGCThreads(new OutputAnalyzer(pb_enabled.start()), threadName); } --- 27,67 ---- * @summary Check trace logging of initial GC threads. * @requires vm.gc=="null" * @key gc * @modules java.base/jdk.internal.misc * @library /test/lib + * @build sun.hotspot.WhiteBox + * @run driver ClassFileInstaller sun.hotspot.WhiteBox sun.hotspot.WhiteBox$WhiteBoxPermission + * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI TestInitialGCThreadLogging */ import jdk.test.lib.process.ProcessTools; import jdk.test.lib.process.OutputAnalyzer; + import sun.hotspot.gc.GC; public class TestInitialGCThreadLogging { public static void main(String[] args) throws Exception { testInitialGCThreadLogging("UseConcMarkSweepGC", "GC Thread"); testInitialGCThreadLogging("UseG1GC", "GC Thread"); testInitialGCThreadLogging("UseParallelGC", "ParGC Thread"); + + if (GC.Shenandoah.isSupported()) { + testInitialGCThreadLogging("UseShenandoahGC", "Shenandoah GC Thread"); + } } private static void verifyDynamicNumberOfGCThreads(OutputAnalyzer output, String threadName) { output.shouldHaveExitValue(0); // test should run succesfully output.shouldContain(threadName); } private static void testInitialGCThreadLogging(String gcFlag, String threadName) throws Exception { // UseDynamicNumberOfGCThreads and TraceDynamicGCThreads enabled ! String[] baseArgs = {"-XX:+UnlockExperimentalVMOptions", "-XX:+" + gcFlag, "-Xmx10M", "-XX:+UseDynamicNumberOfGCThreads", "-Xlog:gc+task=trace", "-version"}; // Base test with gc and +UseDynamicNumberOfGCThreads: ProcessBuilder pb_enabled = ProcessTools.createJavaProcessBuilder(baseArgs); verifyDynamicNumberOfGCThreads(new OutputAnalyzer(pb_enabled.start()), threadName); }
< prev index next >