RFR (S) 8181143: Introduce diagnostic flag to abort VM on too long VM operations
David Holmes
david.holmes at oracle.com
Wed Dec 12 21:57:10 UTC 2018
On 12/12/2018 11:08 pm, Aleksey Shipilev wrote:
> On 12/12/18 1:28 PM, David Holmes wrote:
>>> http://cr.openjdk.java.net/~shade/8181143/webrev.04/
>>
>> Okay I can live with that. :)
>
> Thanks!
>
>> Three comments:
>>
>> 1. We don't use bug id's to name test directories any more (I see a couple have snuck in this past
>> year! so please place the test in a suitable directory ... Safepoints?
>
> Dropped.
The test needs to placed in a different location.
>
>> 2. -Xmx1g might be an issue on some test systems. Does it have to be that large?
>
> Yeah, I was trying to make enough objects for Serial to definitely choke up. I think I can trim it
> to 256m, let me run it through jdk-submit.
>
>> 3. Can you disable core dumping as part of the test so we don't get large core files generated.
>
> Supplying -XX:-CreateCoredumpOnCrash is going to be enough, right?
Right.
> Did this:
>
> diff -r e4bf4aa1100c test/hotspot/jtreg/runtime/8181143/TestAbortOnVMOperationTimeout.java
> --- a/test/hotspot/jtreg/runtime/8181143/TestAbortOnVMOperationTimeout.java Tue Dec 11 22:45:38
> 2018 +0100
> +++ b/test/hotspot/jtreg/runtime/8181143/TestAbortOnVMOperationTimeout.java Wed Dec 12 13:46:15
> 2018 +0100
Test needs to be in e.g.
test/hotspot/jtreg/runtime/Safepoint/TestAbortOnVMOperationTimeout.java
> @@ -27,5 +27,4 @@
> /*
> * @test TestAbortOnVMOperationTimeout
> - * @bug 8181143
This should stay.
> * @summary Check abort on VM timeout is working
> * @library /test/lib
> @@ -38,5 +37,5 @@
> public static void main(String[] args) throws Exception {
> if (args.length > 0) {
> - Object[] arr = new Object[40_000_000];
> + Object[] arr = new Object[10_000_000];
> for (int i = 0; i < arr.length; i++) {
> arr[i] = new Object();
> @@ -51,6 +50,6 @@
> }
>
> - // These should fail: Serial is not very fast. Traversing 40M objects in 5 ms
> - // means less than 0.125 ns per object, which is not doable.
> + // These should fail: Serial is not very fast. Traversing 10M objects in 5 ms
> + // means less than 0.5 ns per object, which is not doable.
> for (int delay : new int[]{0, 1, 5}) {
> testWith(delay, false);
> @@ -63,6 +62,7 @@
> "-XX:+AbortVMOnVMOperationTimeout",
> "-XX:AbortVMOnVMOperationTimeoutDelay=" + delay,
> - "-Xmx1g",
> + "-Xmx256m",
> "-XX:+UseSerialGC",
> + "-XX:-CreateCoredumpOnCrash",
> "TestAbortOnVMOperationTimeout",
> "foo"
Other changes look good.
Thanks,
David
> Full webrev:
> http://cr.openjdk.java.net/~shade/8181143/webrev.05/
>
> -Aleksey
>
More information about the hotspot-dev
mailing list