[crac] RFR: Merge jdk:jdk-25+19

Dmitry Cherepanov dcherepanov at openjdk.org
Mon Jul 14 08:46:12 UTC 2025


On Fri, 11 Jul 2025 17:36:37 GMT, Dmitry Cherepanov <dcherepanov at openjdk.org> wrote:

> After [JDK-8350441](https://bugs.openjdk.org/browse/JDK-8350441) removed Page Cache, the merge updates the original patch for [JDK-8353241](https://bugs.openjdk.org/browse/JDK-8353241) by moving some parts for uncommitting unused memory to Page Allocator.
> 
> Comparing the test results for the original patch from https://github.com/openjdk/crac/pull/219
>> the image is 177 MB with G1 while 215 MB with ZGC (fastdebug build, -Xmx1G)
> 
> my testing shows 201 MB with G1 and 280 MB with ZGC (fastdebug build, -Xmx1G)
> 
> I expect this part to be updated further after future merge with [JDK-8356716](https://bugs.openjdk.org/browse/JDK-8356716)
> 
> <details>
> 
> <summary>Conflicts</summary>
> 
> 
> commit 0b7dcb74717c57308db4f71dfca60dc3496cf566 (HEAD -> merge-jdk, dmitry-crac/merge-jdk)
> Merge: 74dabd26c79 a71f621a324
> Author: Dmitry Cherepanov <dcherepanov at azul.com>
> Date:   Fri Jul 4 18:30:22 2025 +0400
> 
>     Merge with jdk-25+19
> 
> diff --git a/src/hotspot/share/gc/z/zPageAllocator.cpp b/src/hotspot/share/gc/z/zPageAllocator.cpp
> remerge CONFLICT (content): Merge conflict in src/hotspot/share/gc/z/zPageAllocator.cpp
> index 813ce39fc74..fa37122cb82 100644
> --- a/src/hotspot/share/gc/z/zPageAllocator.cpp
> +++ b/src/hotspot/share/gc/z/zPageAllocator.cpp
> @@ -740,7 +740,7 @@ bool ZPartition::claim_capacity(ZMemoryAllocation* allocation) {
>    return true;
>  }
>  
> -size_t ZPartition::uncommit(uint64_t* timeout) {
> +size_t ZPartition::uncommit(uint64_t* timeout, uintx delay) {
>    ZArray<ZVirtualMemory> flushed_vmems;
>    size_t flushed = 0;
>  
> @@ -754,9 +754,9 @@ size_t ZPartition::uncommit(uint64_t* timeout) {
>      const double time_since_last_commit = std::floor(now - _last_commit);
>      const double time_since_last_uncommit = std::floor(now - _last_uncommit);
>  
> -    if (time_since_last_commit < double(ZUncommitDelay)) {
> +    if (time_since_last_commit < double(delay)) {
>        // We have committed within the delay, stop uncommitting.
> -      *timeout = uint64_t(double(ZUncommitDelay) - time_since_last_commit);
> +      *timeout = uint64_t(double(delay) - time_since_last_commit);
>        return 0;
>      }
>  
> @@ -769,15 +769,15 @@ size_t ZPartition::uncommit(uint64_t* timeout) {
>      if (limit == 0) {
>        // This may occur if the current max capacity for this partition is 0
>  
> -      // Set timeout to ZUncommitDelay
> -      *timeout = ZUncommitDelay;
> +      // Set timeout to delay
> +      *timeout = delay;
>        return 0;
>      }
>  
> -    if (time_since_last_uncommit < double(ZUncommitDelay)) {
> +    if (time_sin...

Thanks for the review

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

PR Comment: https://git.openjdk.org/crac/pull/242#issuecomment-3068437604


More information about the crac-dev mailing list