On Wed, 15 Oct 2025 14:18:41 GMT, SendaoYan <[email protected]> wrote:

> Hi all,
> 
> The sub-test failcount in 
> jdk/internal/platform/docker/TestDockerMemoryMetrics.java requires swap 
> memory enable on the test host. But the swap memory check introduced by 
> JDK-8264524 do not work correctly, because it's missing jvm option 
> '-XX:+AlwaysPreTouch', shows as below. This PR add jvm option 
> '-XX:+AlwaysPreTouch' to make the swap memory check work correctly, and use 
> jtreg.SkippedException instead of print waring when this test can not execute.
> 
> Change has been verified locally on linux-x64. Test fix only, no risk.
> 
> 
>> free -h
> total used free shared buff/cache available
> Mem: 751Gi 513Gi 229Gi 5.0Mi 8.4Gi 234Gi
> Swap: 0B 0B 0B
> 
> 
> Without jvm option -XX:+AlwaysPreTouch, the 'java -Xms128m -Xmx128m -version' 
> can start successfully:
> 
>> docker run --rm --memory=128m 
>> jdk-internal:test-jdk-internal-platform-docker-TestDockerMemoryMetrics-metrics-memory
>>  /jdk/bin/java -Xms128m -Xmx128m -version
> openjdk version "26" 2026-03-17
> OpenJDK Runtime Environment HJDK-0 (build 26+-42b2999c)
> OpenJDK 64-Bit Server VM HJDK-0 (build 26+-42b2999c, mixed mode, sharing)
> 
> 
> With jvm option -XX:+AlwaysPreTouch, the 'java -XX:+AlwaysPreTouch -Xms128m 
> -Xmx128m -version' can not start and killed by docker(return code is 137):
> 
>> docker run --rm --memory=128m 
>> jdk-internal:test-jdk-internal-platform-docker-TestDockerMemoryMetrics-metrics-memory
>>  /jdk/bin/java -XX:+AlwaysPreTouch -Xms128m -Xmx128m -version ; echo $?
> 137

This pull request has now been integrated.

Changeset: 7e068cc8
Author:    SendaoYan <[email protected]>
URL:       
https://git.openjdk.org/jdk/commit/7e068cc8d572e61cf2f4203f66fe0175a541209d
Stats:     14 lines in 2 files changed: 6 ins; 2 del; 6 mod

8343340: Swapping checking do not work for MetricsMemoryTester failcount

Reviewed-by: sgehwolf

-------------

PR: https://git.openjdk.org/jdk/pull/27823

Reply via email to