On Tue, 31 Jan 2023 14:59:31 GMT, Doug Simon <dnsi...@openjdk.org> wrote:

>> Alan Hayward has updated the pull request with a new target base due to a 
>> merge or a rebase. The pull request now contains 34 commits:
>> 
>>  - Merge master
>>  - Merge master
>>  - Merge master
>>  - Error on -XX:-PreserveFramePointer -XX:UseBranchProtection=pac-ret
>>  - Add comments to enter calls
>>  - Set PreserveFramePointer if use_rop_protection is set
>>  - Merge enter_subframe into enter
>>  - Review fixups
>>  - Documentation updates
>>  - Update copyrights to 2022
>>  - ... and 24 more: https://git.openjdk.org/jdk/compare/022d8070...c4e0ee31
>
> src/hotspot/cpu/aarch64/vm_version_aarch64.cpp line 413:
> 
>> 411:   }
>> 412: 
>> 413:   if (UseBranchProtection == nullptr || strcmp(UseBranchProtection, 
>> "none") == 0) {
> 
> My understanding is that `UseBranchProtection` requires JIT compiler 
> integration. This is currently missing in Graal. The logic that decides if it 
> should be enabled by default needs to take JVMCI into consideration, much 
> like the call to `JVMCIGlobals::check_jvmci_supported_gc` determines if JVMCI 
> supports the configured GC.
> 
> Thanks to @gilles-duboscq for alerting me to this change.

Thanks for reporting this. @dougxc 

Yes. I encountered several jtreg failures with Graal, which is built with 
PAC-RET enabled JDK.

As I see it, the straightforward fix is to disable JVMCI if `_rop_protection` 
is parsed as "true" finally, since Graal doesn't supports PAC-RET currently. 
That is similar to the way `JVMCIGlobals::check_jvmci_supported_gc` does, i.e. 
if one GC except `G1/Serial/Parallel` is configured, we disable JVMCI.
WDYT

-------------

PR: https://git.openjdk.org/jdk/pull/6334

Reply via email to