RFR 8087315: SIGBUS error in nsk/jvmti/RedefineClasses/StressRedefine

Coleen Phillimore coleen.phillimore at oracle.com
Thu Jul 23 15:34:03 UTC 2015


Thank you Serguei.  I'll fix the indentation to 4 since that's the 
coding style for Java (I like 2 better!)

Coleen

On 7/23/15 8:30 AM, serguei.spitsyn at oracle.com wrote:
> The fix is good.
> Nice test!
>
> A couple of places with indent 2:
>    78         static void localSleep() {
>    79           try{
>    80             Thread.currentThread().sleep(10);//sleep for 10 ms
>    81           } catch(InterruptedException ie) {
>    82           }
>    83         }
>
>   119         for (int i = 0; i < stackTrace.length; i++) {
>   120           StackTraceElement frame = stackTrace[i];
>   121           if (frame.getClassName() == null) {
>   122               System.out.println("\nTest failed: trace[" + i + "].getClassName() returned null");
>   123           }
>   124           if (frame.getMethodName() == null) {
>   125               System.out.println("\nTest failed: trace[" + i + "].getMethodName() returned null");
>   126           }
>   127         }
>
> Thank you a lot for fixing this issue!
>
> Thanks,
> Serguei
>
>
>
> On 7/23/15 4:57 AM, serguei.spitsyn at oracle.com wrote:
>> Hi Coleen,
>>
>>
>> On 7/23/15 4:49 AM, Coleen Phillimore wrote:
>>>
>>> Hi Serguei,
>>>
>>> On 7/23/15 2:35 AM, serguei.spitsyn at oracle.com wrote:
>>>> Coleen,
>>>>
>>>> The fix looks good in general.
>>>> There is one more place where the same may need to be fixed.
>>>> It is in the function java_lang_StackTraceElement::create ():
>>>> 1911     // Fill in source file name and line number.
>>>> 1912     // Use specific ik version as a holder since the mirror might
>>>> 1913     // refer to version that is now obsolete and no longer accessible
>>>> 1914     // via the previous versions list.
>>>> 1915     holder = holder->get_klass_version(version);
>>>> 1916     assert(holder != NULL, "sanity check");
>>>> 1917     Symbol* source = holder->source_file_name();
>>>>
>>>
>>> I did change both places, I think you're looking at the old 
>>> version.   java_lang_StackTraceElement::create() was where the crash 
>>> was.
>>> thanks for getting to this so quickly.
>>
>> You are right, sorry.
>> I've overlooked the second place.
>> It is because both fragments look similar.
>> It is nice that you have fixed them both!
>> Still reviewing the test.
>>
>> Thanks,
>> Serguei
>>
>>> Coleen
>>>
>>>
>>>> I'm still reviewing the test.
>>>>
>>>> Thanks,
>>>> Serguei
>>>>
>>>>
>>>> On 7/22/15 10:22 AM, Coleen Phillimore wrote:
>>>>> Summary: Need to get source_file_name from the_class's constant 
>>>>> pool not previous version constant pool
>>>>>
>>>>> open webrev at http://cr.openjdk.java.net/~coleenp/8087315.01/
>>>>> bug link https://bugs.openjdk.java.net/browse/JDK-8087315
>>>>>
>>>>> Tested with added test (yay!), RBT (remote build and test), 
>>>>> vm.redefine.testlist, jdk/test/java/lang/instrument and failing 
>>>>> testcase 1000 times (reproduced <400).
>>>>>
>>>>> Thanks,
>>>>> Coleen
>>>>
>>>
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20150723/be2d0995/attachment-0001.html>


More information about the serviceability-dev mailing list