[9] RFR (XXS): 8046226: assert(_thread == Thread::current()) failed: thread must be current w/ -XX:+TraceDeoptimization -XX:+Verbose
serguei.spitsyn at oracle.com
serguei.spitsyn at oracle.com
Tue Jun 10 22:09:20 UTC 2014
On 6/10/14 2:06 PM, Coleen Phillimore wrote:
>
> On 6/10/14, 4:34 PM, Vladimir Ivanov wrote:
>> I thought about a test, but it wasn't a trivial one - I need to
>> attach a debugger/jvmti agent, set a breakpoint and then query local
>> variables to trigger the assert. Overkill for such a trivial fix.
>>
>> Do we have jdi/jvmti tests in {hotspot,jdk}/test?
>
> We have some tests in jdk/test/java/lang/instrument, but that's ok. I
> thought you could trigger the bug with -XX:+TraceDeoptimization -Xcomp
> -version or something like that, but if it's more complicated, I don't
> think we have the framework to do it.
We also have:
jdk/test/com/sun/jdi - not sure how useful these tests are for your
purposes
also few tests here: hotspot/test/serviceability/jvmti
Thanks,
Serguei
>
> Thanks,
> Coleen
>
>>
>> Best regards,
>> Vladimir Ivanov
>>
>> On 6/10/14 11:01 PM, Coleen Phillimore wrote:
>>>
>>> This change looks good but can you add a test? There are some other
>>> tests written in Java code that test command line flags. I think a
>>> test is better than a comment. If you've already checked it in, never
>>> mind.
>>>
>>> Thanks,
>>> Coleen
>>>
>>> On 6/9/14, 12:20 PM, Vladimir Ivanov wrote:
>>>> Dan, Chris, Fred, thanks for review.
>>>>
>>>> Best regards,
>>>> Vladimir Ivanov
>>>>
>>>> On 6/9/14 8:12 PM, Christian Thalinger wrote:
>>>>> Looks good.
>>>>>
>>>>> On Jun 6, 2014, at 3:21 PM, Vladimir Ivanov
>>>>> <vladimir.x.ivanov at oracle.com> wrote:
>>>>>
>>>>>> Dan, Chris, Fred, thank you!
>>>>>>
>>>>>>>> src/share/vm/runtime/vframe.cpp
>>>>>>>> I think it's worth a short comment to keep someone from
>>>>>>>> "optimizing" this in the future:
>>>>>>>
>>>>>>> Good point. Might be worth to pass in Thread::current() to make it
>>>>>>> explicit plus the comment.
>>>>>> Yes, I agree. Updated webrev:
>>>>>> http://cr.openjdk.java.net/~vlivanov/8046226/webrev.01/
>>>>>>
>>>>>> Best regards,
>>>>>> Vladimir Ivanov
>>>>>>
>>>>>>>>
>>>>>>>> // need the current JavaThread and not thread():
>>>>>>>> line 272: methodHandle m_h(method());
>>>>>>>>
>>>>>>>> And if you could add the same comment above:
>>>>>>>>
>>>>>>>> // need the current JavaThread and not
>>>>>>>> thread():
>>>>>>>> line 333: methodHandle m_h(method());
>>>>>>>>
>>>>>>>> Dan
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Method handle should be associated with current thread and not
>>>>>>>>> with a thread which owns vframe.
>>>>>>>>>
>>>>>>>>> Testing: manual (attached Java debugger to debug JVM w/
>>>>>>>>> -XX:+TraceDeoptimization -XX:+Verbose and inspected local
>>>>>>>>> variables).
>>>>>>>>>
>>>>>>>>> Thanks!
>>>>>>>>>
>>>>>>>>> Best regards,
>>>>>>>>> Vladimir Ivanov
>>>>>>>>
>>>>>>>
>>>>>
>>>
>
More information about the hotspot-runtime-dev
mailing list