RFR: 8364235: Fix for JDK-8361447 breaks the alignment requirements for GuardedMemory [v2]
Axel Boldt-Christmas
aboldtch at openjdk.org
Tue Jul 29 08:33:04 UTC 2025
On Tue, 29 Jul 2025 08:09:52 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> The fix for [JDK-8361447](https://bugs.openjdk.org/browse/JDK-8361447) added a new field to the `GuardHeader`, not realizing that the size of the `GuardHeader` must be such that the address of the user-data has the strictest necessary alignment (16-byte).
>>
>> We need to add a padding field to restore the alignment.
>>
>> A static assert is added to check the alignment.
>>
>> Testing:
>> - tiers 1-3 (in progress)
>>
>> Thanks
>
> David Holmes has updated the pull request incrementally with one additional commit since the last revision:
>
> Correct comments as per reviewer comments
src/hotspot/share/memory/guardedMemory.hpp line 45:
> 43: * |------------------------------------------------------------
> 44: * |base_addr | 0xABABABABABABABAB | Head guard |
> 45: * |+16 | padding | For alignment |
Is `+sizeof(Guard)` or `+GUARD_SIZE` an alternative to `+16`. 16 is a little out of the blue for me.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/26524#discussion_r2238973802
More information about the hotspot-runtime-dev
mailing list