[aarch64-port-dev ] RFR: 8234794: AArch64: runtime/memory/ReadFromNoaccessArea.java crashes
Ioi Lam
ioi.lam at oracle.com
Tue Dec 17 15:34:52 UTC 2019
Hi Nick, sorry for the delay. The changes look good to me.
I am running test tiers 1/2 with our CI pipeline and will report the
results back.
Thanks
- Ioi
On 12/16/19 10:25 PM, Nick Gasson wrote:
> Hi,
>
> Any comments on the most recent webrev below?
>
> Thanks,
> Nick
>
> On 12/12/2019 16:31, Nick Gasson wrote:
>> On 12/12/2019 04:16, Andrew Haley wrote:
>>> On 12/11/19 7:08 AM, Nick Gasson wrote:
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8234794
>>>> Webrev: http://cr.openjdk.java.net/~ngasson/8234794/webrev.01/
>>>
>>> Thanks. A few nits:
>>
>> Please see the updated webrev:
>>
>> http://cr.openjdk.java.net/~ngasson/8234794/webrev.02/
>>
>>>
>>> This recalculates klass_decode_mode() a thousand times on only a small
>>> program. Be aware that C2 creates a new Assembler instance for most
>>> patterns.
>>>
>>> _klass_decode_mode could be calculated only once. Make it static and it
>>> will be.
>>
>> Yes. Also added an assert that Metaspace::initialized() in case we
>> call it too early.
>>
>>>
>>> This inverted logic:
>>>
>>> #if !(defined(AARCH64) || defined(AIX))
>>> return ReservedSpace(size, alignment, large_pages, requested_addr);
>>> #else // AARCH64 || AIX
>>>
>>> looks a bit cumbersome. It might be nice to do it the other way up, so
>>> that reserve_preferred_space is called from a static generic allocate
>>> method.
>>>
>>> Rather than explicitly defined(AARCH64) || defined(AIX) you might
>>> like to
>>> consider a named macro
>>>
>>> #if OS_CPU_USES_PREFERRED_SPACE
>>> return reserve_preferred_space( ...
>>> endif
>>>
>>
>> OK. Metaspace::reserve_preferred_space() is now only defined if
>> PREFERRED_METASPACE_ALIGNMENT is set. The generic method is
>> Metaspace::reserve_space(). MetaspaceShared::reserve_shared_space()
>> is now just a trivial wrapper for this so maybe it can be removed.
>>
>> I put the definition in the CPU's globalDefinitions.hpp because we
>> don't have one for os_cpu, and we need it for every AArch64 system
>> anyway.
>>
>> Also fixed the break/return inconsistency suggested by Jiangli.
>>
>>
>> Thanks,
>> Nick
More information about the hotspot-runtime-dev
mailing list