RFR(S) 8016465 The hs_err file gets wrong name

frederic parain frederic.parain at oracle.com
Thu Jul 4 08:56:24 PDT 2013


Thank you, Dan.

Fred

On 04/07/2013 17:47, Daniel D. Daugherty wrote:
> On 7/4/13 8:30 AM, frederic parain wrote:
>> Greetings,
>>
>> Please review this small fix:
>>
>> The bug description:
>> http://bugs.sun.com/view_bug.do?bug_id=8016465
>> https://jbs.oracle.com/bugs/browse/JDK-8016465
>>
>> The webrev:
>> http://cr.openjdk.java.net/~fparain/8016465/webrev.00/
>
> src/share/vm/utilities/vmError.cpp
>      No comments.
>
> Looks good. Thanks for fixing this!
>
> Dan
>
>
>>
>> The issue is due to a static variable ('buffer') that
>> can be used concurrently by several threads. The 'buffer'
>> variable is used in different places of the report_and_die()
>> method, but there's only one block where the concurrency
>> issue could occur. I've replaced usage of the static
>> variable with a local stack allocated variable to avoid
>> the concurrency issue. The new stack allocated char array
>> is small, so it should not cause stack overflow issues.
>> If a stack overflow occurs anyway, this will only impact
>> the current thread, which is trying to print a message
>> like "[thread xxx has also an error]" and won't impact
>> the thread currently generating the hs_error file (which
>> is the most important). The original static variable 'buffer'
>> is now only used by the first thread that reported an issue,
>> i.e. the thread generating the hs_error file.
>>
>> Thanks,
>>
>> Fred
>>
>

-- 
Frederic Parain - Oracle
Grenoble Engineering Center - France
Phone: +33 4 76 18 81 17
Email: Frederic.Parain at oracle.com


More information about the hotspot-runtime-dev mailing list