RFR: 8345012: os::build_agent_function_name potentially wastes a byte when allocating the buffer [v3]
David Holmes
dholmes at openjdk.org
Thu Nov 28 05:01:22 UTC 2024
> 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 with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains six additional commits since the last revision:
- Merge branch 'master' into 8345012-windows
- Fix bug re-checking minimum length
- Rework things so that `name_len` is always actually the length of the lib name, and make using
an underscore explicit
- Fix up strncat length
- Same changes for os_posix and align code between the versions
- 8345012: os::build_agent_function_name potentially wastes a byte when allocating the buffer
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/22404/files
- new: https://git.openjdk.org/jdk/pull/22404/files/48eb8d1a..be254520
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=22404&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=22404&range=01-02
Stats: 10387 lines in 323 files changed: 2750 ins; 5965 del; 1672 mod
Patch: https://git.openjdk.org/jdk/pull/22404.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/22404/head:pull/22404
PR: https://git.openjdk.org/jdk/pull/22404
More information about the hotspot-runtime-dev
mailing list