[aarch64-port-dev ] RFR: 8234794: AArch64: runtime/memory/ReadFromNoaccessArea.java crashes
Ioi Lam
ioi.lam at oracle.com
Tue Dec 17 16:53:33 UTC 2019
My test run of tiers 1 and 2 is complete. There were no new failures
caused by webrev.02.
Thumbs up.
- Ioi
On 12/17/19 7:34 AM, Ioi Lam wrote:
> 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