RFR: 8315923: pretouch_memory by atomic-add-0 fragments huge pages unexpectedly [v29]
Liming Liu
duke at openjdk.org
Fri Jan 26 02:53:33 UTC 2024
On Thu, 25 Jan 2024 08:22:26 GMT, Thomas Stuefe <stuefe at openjdk.org> wrote:
>> Liming Liu has updated the pull request incrementally with two additional commits since the last revision:
>>
>> - Use TestThreadGroup
>> - Set it as default before parsing
>
> src/hotspot/os/linux/os_linux.cpp line 2972:
>
>> 2970: ", %d) failed; error='%s' (errno=%d)",
>> 2971: p2i(first), len, MADV_POPULATE_WRITE,
>> 2972: os::strerror(err), err);
>
> What other things can go wrong here beside missing kernel support?
>
> Unconditional log output (with log_warning) is tricky. Many tools parse the JVM output and are thrown off by unexpected content. That's why we restrict log_warning to the small band of "stuff that can go wrong at a customer but it is so severe we really need to tell the customer right now".
>
> Stuff that should never go wrong should be assert()ed, or possibly guarantee()'d.
>
> Stuff that can go wrong but is not as severe, should be warned about at a lower level.
>
> In this case, output may get flooded with warnings if we continue running the VM and repeat the pretouch attempts with other areas.
There are some cases shown in madvise_populate at linux/mm/madvise.c. But I'm not sure how to trigger them. So I would decrease the log level here.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/15781#discussion_r1467176397
More information about the hotspot-runtime-dev
mailing list