RFR (S) 8227766: CheckUnhandledOops is broken in MemAllocator
Lois Foltan
lois.foltan at oracle.com
Wed Jul 17 21:43:16 UTC 2019
On 7/17/2019 1:48 PM, coleen.phillimore at oracle.com wrote:
>
>
> On 7/17/19 1:01 PM, Lois Foltan wrote:
>> On 7/17/2019 12:22 PM, coleen.phillimore at oracle.com wrote:
>>>
>>> Due to some concerns about MemAllocator performance, and to only
>>> create handles when needed, I have retested smaller change:
>>>
>>> open webrev at
>>> http://cr.openjdk.java.net/~coleenp/2019/8227766.02/webrev
>>
>> Looks good.
>>
>> gc/shared/memAllocator.cpp
>> - line #373-375: Since obj is already initialized to NULL to you need
>> the else clause?
>
> Yes, because CheckUnhandledOops poisons oops that are local variables,
> so we have to set it back to zero. I can add that to the comment.
Ahh, I missed on line #369 that obj is passed by reference. Looks good,
you have my review.
Lois
>
> Thanks!
> Coleen
>>
>> Thanks,
>> Lois
>>
>>>
>>> Coleen
>>>
>>> On 7/17/19 10:49 AM, coleen.phillimore at oracle.com wrote:
>>>> Summary: Save oop created in handle more eagerly, so
>>>> CheckUnhandledOops doesn't bash it.
>>>>
>>>> Also added a test for the case that was failing. There were a
>>>> couple of changes needed to compile CHECK_UNHANDLED_OOPS with
>>>> slowdebug, but I reverted the makefile changes for doing that
>>>> because I don't think we want it for slowdebug.
>>>> Lastly, made some changes to make CheckUnhandledOops easier to
>>>> debug, and removed an unnecessary clearing, since it's also done in
>>>> the transition.
>>>>
>>>> Tested with hs-tier1-3 with -XX:+CheckUnhandledOops and without.
>>>>
>>>> open webrev at
>>>> http://cr.openjdk.java.net/~coleenp/2019/8227766.01/webrev
>>>> bug link https://bugs.openjdk.java.net/browse/JDK-8227766
>>>>
>>>> Thanks,
>>>> Coleen
>>>
>>
>
More information about the hotspot-runtime-dev
mailing list