[9] RFR (XXS): 8046226: assert(_thread == Thread::current()) failed: thread must be current w/ -XX:+TraceDeoptimization -XX:+Verbose
Coleen Phillimore
coleen.phillimore at oracle.com
Tue Jun 10 21:06:22 UTC 2014
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.
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