RFR: 8221149: os::malloc checks MallocCatchPtr outside of ifdef ASSERT block
Stefan Karlsson
stefan.karlsson at oracle.com
Mon Apr 1 08:33:53 UTC 2019
Thanks, David.
StefanK
On 2019-03-29 01:31, David Holmes wrote:
> Hi Stefan,
>
> This looks good to me too.
>
> Thanks,
> David
>
> On 28/03/2019 10:33 pm, Stefan Karlsson wrote:
>> Hi Thomas,
>>
>> On 2019-03-28 09:21, Thomas Stüfe wrote:
>>> Hi Stefan,
>>>
>>> On Thu, Mar 28, 2019 at 8:47 AM Stefan Karlsson
>>> <stefan.karlsson at oracle.com <mailto:stefan.karlsson at oracle.com>> wrote:
>>>
>>> Hi all,
>>>
>>> Please review this patch to move the MallocCatchPtr check into the
>>> ifdef
>>> ASSERT block, just like the other usages of it.
>>>
>>> http://cr.openjdk.java.net/~stefank/8221149/webrev.01/
>>> https://bugs.openjdk.java.net/browse/JDK-8221149
>>>
>>>
>>> Looks good. Note that you also could remove the test completely from
>>> os::realloc for the oldptr!=NULL case (lines 764ff) since we
>>> allocated using os::malloc(), which already does the test.
>>
>> Thanks for reviewing.
>>
>> I've incorporated your proposal:
>> http://cr.openjdk.java.net/~stefank/8221149/webrev.02.delta
>> http://cr.openjdk.java.net/~stefank/8221149/webrev.02
>>
>> StefanK
>>
>>>
>>> A side note: Is the intention that MallocCatchPtr should find
>>> pointers
>>> to the memory address returned from ::malloc, or the memory
>>> address we
>>> hand out from os::malloc? Currently it's the latter and it's not
>>> obvious
>>> from the the code if this was the intention from the beginning.
>>>
>>> 704 // Wrap memory with guard
>>> 705 GuardedMemory guarded(ptr, size + nmt_header_size);
>>> 706 ptr = guarded.get_user_ptr();
>>> 707
>>> 708 if ((intptr_t)ptr == (intptr_t)MallocCatchPtr) {
>>>
>>>
>>> I find the test as it is is more useful since usually one wants to
>>> follow pointers one sees in the hotspot.
>>>
>>> However, we may just test both pointers, yes? So, break if
>>> MallocCatchPtr is either the outside or the inside pointer.
>>>
>>> I am not really emotionally invested though :)
>>>
>>> Cheers Thomas
>>>
>>> Thanks,
>>> StefanK
>>>
More information about the hotspot-runtime-dev
mailing list