13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 package gc.metaspace;
25
26 /*
27 * @test
28 * @key gc
29 * @bug 8049831
30 * @library /test/lib
31 * @modules java.base/jdk.internal.misc
32 * java.management
33 * @build sun.hotspot.WhiteBox
34 * @run driver ClassFileInstaller sun.hotspot.WhiteBox
35 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI gc.metaspace.TestCapacityUntilGCWrapAround
36 */
37
38 import sun.hotspot.WhiteBox;
39
40 import jdk.test.lib.Asserts;
41 import jdk.test.lib.Platform;
42
43 public class TestCapacityUntilGCWrapAround {
44 private static long MB = 1024 * 1024;
45 private static long GB = 1024 * MB;
46 private static long MAX_UINT = 4 * GB - 1; // On 32-bit platforms
47
48 public static void main(String[] args) {
49 if (Platform.is32bit()) {
50 WhiteBox wb = WhiteBox.getWhiteBox();
51
52 long before = wb.metaspaceCapacityUntilGC();
53 // Now force possible overflow of capacity_until_GC.
54 long after = wb.incMetaspaceCapacityUntilGC(MAX_UINT);
55
56 Asserts.assertGTE(after, before,
57 "Increasing with MAX_UINT should not cause wrap around: " + after + " < " + before);
58 Asserts.assertLTE(after, MAX_UINT,
59 "Increasing with MAX_UINT should not cause value larger than MAX_UINT:" + after);
60 }
61 }
62 }
|
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 package gc.metaspace;
25
26 /*
27 * @test
28 * @key gc
29 * @bug 8049831
30 * @library /test/lib
31 * @modules java.base/jdk.internal.misc
32 * java.management
33 * @requires vm.bits == 32
34 * @build sun.hotspot.WhiteBox
35 * @run driver ClassFileInstaller sun.hotspot.WhiteBox
36 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI gc.metaspace.TestCapacityUntilGCWrapAround
37 */
38
39 import sun.hotspot.WhiteBox;
40
41 import jdk.test.lib.Asserts;
42
43 public class TestCapacityUntilGCWrapAround {
44 private static long MB = 1024 * 1024;
45 private static long GB = 1024 * MB;
46 private static long MAX_UINT = 4 * GB - 1; // On 32-bit platforms
47
48 public static void main(String[] args) {
49 WhiteBox wb = WhiteBox.getWhiteBox();
50
51 long before = wb.metaspaceCapacityUntilGC();
52 // Now force possible overflow of capacity_until_GC.
53 long after = wb.incMetaspaceCapacityUntilGC(MAX_UINT);
54
55 Asserts.assertGTE(after, before,
56 "Increasing with MAX_UINT should not cause wrap around: " + after + " < " + before);
57 Asserts.assertLTE(after, MAX_UINT,
58 "Increasing with MAX_UINT should not cause value larger than MAX_UINT:" + after);
59 }
60 }
|