RFR: 8345012: os::build_agent_function_name potentially wastes a byte when allocating the buffer [v4]
Aleksey Shipilev
shade at openjdk.org
Thu Nov 28 19:29:38 UTC 2024
On Thu, 28 Nov 2024 12:35:15 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> This is a minor issue noticed in the review of JEP 479. The calculations of the buffer length always do `+2` to allow for an optional underscore plus the terminator. A solution was suggested in that review (which I initially used) but I've instead opted for a solution where `name_len` always reflects the actual length of the lib name - otherwise we need to subtract the 1 again when doing the `strncat`. I also made the need for the underscore explicit.
>>
>> As the same code is used in os_posix.cpp both versions were made consistent. The only difference between them is the Windows version has to check for a drive specifier. I toyed with combining them into a shared version with a Windows-specific chunk, but opted for the simpler change. I can revisit that if people have strong opinions.
>>
>> Testing
>> - tiers 1-4
>>
>> Thanks
>
> David Holmes has updated the pull request incrementally with one additional commit since the last revision:
>
> Move to shared code and apply @shipilev suggestions
Looks fine by me. If you want to completely overkill this, consider adding a gtest :)
src/hotspot/share/runtime/os.cpp line 2499:
> 2497: const char *start;
> 2498:
> 2499:
Nit: double new-line?
-------------
Marked as reviewed by shade (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/22404#pullrequestreview-2468732699
PR Review Comment: https://git.openjdk.org/jdk/pull/22404#discussion_r1862610586
More information about the hotspot-runtime-dev
mailing list