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