RFR (XS): 8015635: Crash when specifying very large code cache size
Christian Thalinger
christian.thalinger at oracle.com
Mon Jul 1 17:51:57 PDT 2013
I have no idea how this testlibrary works but does the following take care of crashes or does it only check the exit value?
42 pb = ProcessTools.createJavaProcessBuilder("-XX:ReservedCodeCacheSize=2049m", "-version");
43 out = new OutputAnalyzer(pb.start());
44 out.shouldHaveExitValue(1);
-- Chris
On Jun 30, 2013, at 9:44 PM, Albert Noll <albert.noll at oracle.com> wrote:
> Hi,
>
> thanks for looking at the patch. I updated the patch.
> http://cr.openjdk.java.net/~anoll/8015635/webrev.04/
>
> Could I have a second review for this?
>
> Best,
> Albert
>
> On 28.06.2013 18:58, Christian Tornqvist wrote:
>> Hi Vladimir,
>>
>> It's not needed if you simply want jtreg to run your test normally, from the
>> jtreg tag spec:
>>
>> "DEFAULTS
>>
>> If no @run tags are present in a defining file, a default is assumed
>> depending
>> upon the file's filename extension. For a ".java" file, "@run main <name>"
>> is
>> assumed, where <name> is the name of the file without the ".java" suffix."
>>
>> So using '@run main Test' is redundant.
>>
>> Thanks,
>> Christian
>>
>> -----Original Message-----
>> From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com]
>> Sent: den 28 juni 2013 12:48
>> To: Christian Tornqvist
>> Cc: 'Albert Noll'; 'hotspot compiler'
>> Subject: Re: RFR (XS): 8015635: Crash when specifying very large code cache
>> size
>>
>> Christian,
>>
>> Why '@run main Test' is not used in these tests?
>>
>> Thanks,
>> Vladimir
>>
>> On 6/28/13 9:08 AM, Christian Tornqvist wrote:
>>> Hi Albert,
>>>
>>> You should use '@library /testlibrary' instead of a relative path,
>>> otherwise the test looks fine. Thanks for rewriting this in java and
>>> fixing the name of the test J
>>>
>>> Thanks,
>>>
>>> Christian
>>>
>>> *From:*hotspot-compiler-dev-bounces at openjdk.java.net
>>> [mailto:hotspot-compiler-dev-bounces at openjdk.java.net] *On Behalf Of
>>> *Albert Noll
>>> *Sent:* den 28 juni 2013 11:19
>>> *To:* hotspot compiler
>>> *Subject:* Re: RFR (XS): 8015635: Crash when specifying very large
>>> code cache size
>>>
>>> Hi,
>>>
>>> Christian, thanks for the comment. I implemented the test in Java.
>>> I was not entirely sure how to use @library. The current version works
>>> on my system.
>>>
>>>
>>> Here is the new webrev:
>>> http://cr.openjdk.java.net/~anoll/8015635/webrev.03/<http://cr.openjdk
>>> .java.net/%7Eanoll/8015635/webrev.03/>
>>>
>>> Best,
>>> Albert
>>>
>>> On 28.06.2013 10:19, Christian Tornqvist wrote:
>>>
>>> Hi Albert,
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Please don't use shell scripts, this can be expressed in java
>>> which will
>>>
>>> work on all platforms. See
>>>
>>>
>>> http://hg.openjdk.java.net/hsx/hotspot-rt/hotspot/file/221df7e37535/te
>>> st/run
>>>
>>> time/CommandLine/UnrecognizedVMOption.java for example on how to
>>> do this in
>>>
>>> java.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Also, please follow the test naming convention described at:
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> https://wikis.oracle.com/display/HotSpotInternals/Naming+HotSpot+JTReg
>>> +Tests
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Thanks,
>>>
>>>
>>>
>>> Christian
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> From:hotspot-compiler-dev-bounces at openjdk.java.net
>>> <mailto:hotspot-compiler-dev-bounces at openjdk.java.net>
>>>
>>> [mailto:hotspot-compiler-dev-bounces at openjdk.java.net] On Behalf
>>> Of Albert
>>>
>>> Noll
>>>
>>> Sent: den 28 juni 2013 03:39
>>>
>>> To:hotspot-compiler-dev at openjdk.java.net
>>> <mailto:hotspot-compiler-dev at openjdk.java.net>
>>>
>>> Subject: Re: RFR (XS): 8015635: Crash when specifying very large
>>> code cache
>>>
>>> size
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Hi Valdimir,
>>>
>>>
>>>
>>> thanks again for looking at the code.
>>>
>>> I implemented your proposed changes.
>>>
>>>
>>>
>>> http://cr.openjdk.java.net/~anoll/8015635/webrev.02/
>>>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev.02/>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev.02/>
>>>
>>>
>>>
>>> Best,
>>>
>>> Albert
>>>
>>>
>>>
>>> On 28.06.2013 08:29, Vladimir Kozlov wrote:
>>>
>>>
>>>
>>> Albert,
>>>
>>>
>>>
>>> In the test could check the code after each java run? Example
>>> shows only
>>>
>>> logic, not script instructions:
>>>
>>>
>>>
>>> java 2048m
>>>
>>> if $? -ne 0
>>>
>>> failed
>>>
>>> exit
>>>
>>> fi
>>>
>>>
>>>
>>> java 2049m
>>>
>>> if $? -eq 0
>>>
>>> failed
>>>
>>> exit
>>>
>>> fi
>>>
>>>
>>>
>>> passed
>>>
>>>
>>>
>>>
>>>
>>> Thanks,
>>>
>>> Vladimir
>>>
>>>
>>>
>>> On 6/27/13 10:14 PM, Albert Noll wrote:
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Hi,
>>>
>>>
>>>
>>> Pavel, Vladimir, thanks for looking at the patch. I added a
>>> regression test
>>>
>>> and made the proposed changes in arguments.cpp.
>>>
>>>
>>>
>>> Here is the new webrev.
>>>
>>> http://cr.openjdk.java.net/~anoll/8015635/webrev.01/
>>>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev.01/>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev.01/>
>>>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev.01/>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev.01/>
>>>
>>>
>>>
>>> Thanks,
>>>
>>> Albert
>>>
>>>
>>>
>>> On 27.06.2013 18:36, Vladimir Kozlov wrote:
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> We don't place 'else' on separate line and remove comment inside
>>> 'if' body
>>>
>>> and change it to:
>>>
>>>
>>>
>>> } else if (ReservedCodeCacheSize > 2*G) { {
>>>
>>> // Code cache size larger than MAXINT is not supported.
>>>
>>>
>>>
>>> Thanks,
>>>
>>> Vladimir
>>>
>>>
>>>
>>> On 6/27/13 5:01 AM, Albert Noll wrote:
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Hi,
>>>
>>>
>>>
>>> thanks for reviewing this small patch.
>>>
>>>
>>>
>>> Best,
>>>
>>> Albert
>>>
>>>
>>>
>>> jbs:https://jbs.oracle.com/bugs/browse/JDK-8015635
>>>
>>> webrev:http://cr.openjdk.java.net/~anoll/8015635/webrev/
>>>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev/>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev/>
>>>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev/>
>>> <http://cr.openjdk.java.net/%7Eanoll/8015635/webrev/>
>>>
>>>
>>>
>>> Problem: A code cache size larger than 2G is not supported and
>>> therefore
>>>
>>> results in VM crashes.
>>>
>>> Solution: Limit the size of the code cache to at most 2G when
>>> arguments are
>>>
>>> checked. If a larger code cache size is
>>>
>>> specified with -XX:ReservedCodeCacheSize=..., the JVM does not
>>> start and
>>>
>>> reports an error.
>>>
>>>
>>>
>>>
>>>
>>> Best,
>>>
>>> Albert
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20130701/96536195/attachment.html
More information about the hotspot-compiler-dev
mailing list