RFR: 8344168: Change Unsafe base offset from int to long
ExE Boss
duke at openjdk.org
Fri Nov 15 01:08:25 UTC 2024
On Thu, 14 Nov 2024 23:20:23 GMT, Dean Long <dlong at openjdk.org> wrote:
>> The type of the Unsafe base offset constant is int, which may cause overflow when adding int offsets, such as 8343925 (PR #22012). 8343984 (PR #22027) fixes most of the offset overflows in JDK, but ArraysSupport and CRC32C are still unfixed.
>>
>> @liach proposed the idea of changing the Unsafe base offset to long, which is a complete solution to the Unsafe offset overflow. After discussing with @liach, I submitted this PR to implement @liach's idea.
>
> Doesn't this break any apps that use these offsets? Aren't these fields part of the public API of Unsafe, so changing them requires a CSR?
@dean-long
> Doesn't this break any apps that use these offsets? Aren't these fields part of the public API of Unsafe, so changing them requires a CSR?
This is the encapsulated JDK‑internal `Unsafe` in `java.base`, not the legacy `sun.misc.Unsafe`.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/22095#issuecomment-2477742637
More information about the core-libs-dev
mailing list