RFR: 8357086: os::xxx functions returning memory size should return size_t [v33]
Stefan Karlsson
stefank at openjdk.org
Thu Aug 21 12:20:04 UTC 2025
On Thu, 21 Aug 2025 12:15:18 GMT, Anton Artemov <duke at openjdk.org> wrote:
>> Hi,
>>
>> in this PR the output value types for functions which return memory are changed, namely:
>>
>>
>> static julong available_memory(); --> static bool available_memory(size_t& value);
>> static julong used_memory(); --> static bool used_memory(size_t& value);
>> static julong free_memory(); --> static bool free_memory(size_t& value);
>> static jlong total_swap_space(); --> static bool total_swap_space(size_t& value);
>> static jlong free_swap_space(); --> static bool free_swap_space(size_t& value);
>> static julong physical_memory(); --> static size_t physical_memory(size_t& value);
>>
>>
>> The return boolean value, where available, indicates success, whereas the actual value is assigned to the input argument. The following recommended usage pattern is introduced: where applicable, an unsuccessful call is logged.
>>
>> `ATTRIBUTE_NODISCARD` macro is added as a placeholder for `[[nodiscard]]`, which will be available with C++17.
>>
>> Tested in GHA and Tiers 1-5.
>
> Anton Artemov has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 35 commits:
>
> - Merge remote-tracking branch 'origin/master' into JDK-8357086_size_t_memfuncs
> - 8357086: Addressed reviewer's comments
> - 8357086: Addressed reviewers' comments
> - Merge remote-tracking branch 'origin/master' into JDK-8357086_size_t_memfuncs
> - 8357086: Addressed reviewer's comments
> - 8357086: Addressed reviewer's comments
> - 8357086: Fixed whitespace error
> - 8357086: Addressed reviewer's comments
> - 8357086: Addressed reviewer's comments
> - 8357086: Addressed reviewer's comments
> - ... and 25 more: https://git.openjdk.org/jdk/compare/02fe095d...99599ae3
src/hotspot/os/windows/os_windows.cpp line 869:
> 867: return true;
> 868: } else {
> 869: assert(false, "GlobalMemoryStatusEx failed in os::available_memory(): %lu", ::GetLastError());
I didn't request this to be changed and it was changed to the wrong function name.
Suggestion:
assert(false, "GlobalMemoryStatusEx failed in os::win32::available_memory(): %lu", ::GetLastError());
Tip: you can accept suggestions in the GitHub UI to get exactly what the reviewer requested (if you are brave enough to trust the reviewer :D )
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25450#discussion_r2290870945
More information about the hotspot-dev
mailing list