RFR (S) round 0 for 8135195 VM Options file should not be limited to 1024 bytes

Ron Durbin ron.durbin at oracle.com
Tue Sep 29 12:52:34 UTC 2015


Jerry,

Good point, but we are not keeping the realloc code in the next round.
See Harold's email for this thread.

Thanks for the review.

Ron

>-----Original Message-----
>From: Gerald Thornbrugh
>Sent: Thursday, September 24, 2015 9:17 AM
>To: Ron Durbin
>Cc: Daniel Daugherty; hotspot-runtime-dev at openjdk.java.net
>Subject: Re: RFR (S) round 0 for 8135195 VM Options file should not be limited to 1024 bytes
>
>Hi Ron,
>
>I have a small nit, I am not sure about every instance of realloc() but
>the linux version says:
>
>         If realloc() fails the original block is left untouched; it is
>not freed or moved.
>
>It might be better to assign the buffer returned by realloc() to a
>different variable so that you can
>free the original buffer on error. Then set "buf" to the value if there
>was not an error.
>
>Something like this:
>
>3546     read_offset = bytes_allocated;  // remember where to read next
>block
>3547     // '+ 1' for NULL termination with full buffer.
>3548     newbuf = REALLOC_C_HEAP_ARRAY_RETURN_NULL(char, buf,
>3549                                            bytes_allocated +
>OPTION_BUFFER_SIZE + 1,
>3550                                            mtInternal);
>3551     if (newbuf == NULL) {
>3552       jio_fprintf(defaultStream::error_stream(),
>3553                   "Could not reallocate read buffer for options
>file parse\n");
>                FREE_C_HEAP_ARRAY(char, buf);
>3554       os::close(fd);
>3555       return JNI_ENOMEM;
>3556     }
>              buf = newbuf;
>
>Since this is option processing and the thread is exiting anyway it is
>probably not a big deal.
>You can leave it as is if you wish.
>
>Other than that your fix looks good.
>
>Jerry
>> On 9/24/15 8:35 AM, Ron Durbin wrote:
>>> Here is the round 0 webrev for 8135195
>>>
>>> Webrev link:
>>> http://cr.openjdk.java.net/~rdurbin/Webrevs/JDK-8135195/OCR0_JDK9/webrev/
>>>
>>
>> The above link did not work. I found the webrev here:
>>
>> http://cr.openjdk.java.net/~rdurbin/8135195_OCR0_JDK9_webrev/
>>
>> Dan
>>
>>>
>>> RFE request:
>>> https://bugs.openjdk.java.net/browse/JDK-8135195
>>>
>>> This RFE removes the limitation on the size of VM Options files. That
>>> limit is currently 1K bytes.
>>> Removing that limit will allow options files to be read with no
>>> practical size limit.
>>>
>>> This feature has been tested on:
>>>      OS:
>>>        Solaris, MAC, Windows, Linux
>>>      Tests:
>>>        Manual unit tests
>>>        JPRT with -testset hotspot (including the SQE proposed test
>>> coverage for this feature.)
>>
>


More information about the hotspot-runtime-dev mailing list