RFR: 8342504: Remove NMT header and footer canaries [v2]

Afshin Zafari azafari at openjdk.org
Thu Nov 21 11:38:18 UTC 2024


On Mon, 18 Nov 2024 12:37:20 GMT, Johan Sjölen <jsjolen at openjdk.org> wrote:

>> Today NMT has two canaries: A header and a footer canary. These enable mainly two things:
>> 
>> 1. For NMT to aid in describing a pointer
>> 2. A basic form of out-of-bounds protection
>> 
>> With the introduction of UBSan and Asan into OpenJDK we have gained stronger tools for this sort of analysis, without requiring NMT to be activated. Therefore, I believe that point 2 is no longer something that NMT needs to support. For point number one, we will unfortunately be losing this ability.
>> 
>> I want to delete these canaries to open up a few free bytes. These can allow us to have "practically unlimited" (4 bytes) of memory tags.
>> 
>> tier1-tier2 tests succeeded.
>> 
>> I am awaiting discussion on the Hotspot-dev mailing list, but keeping this PR open for review.
>
> Johan Sjölen has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Rename flags to tags

The comment line saying that  NMT can detect memory corruptions is not valid any more and is still in the code.

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

Marked as reviewed by azafari (Committer).

PR Review: https://git.openjdk.org/jdk/pull/21560#pullrequestreview-2451108396


More information about the hotspot-runtime-dev mailing list