RFR: 8255917: runtime/cds/SharedBaseAddress.java failed "assert(reserved_rgn != 0LL) failed: No reserved region" [v2]

Yumin Qi minqi at openjdk.java.net
Mon Dec 7 18:08:25 UTC 2020


> Hi, Please review
>   Windows mapping for file into memory could not happen to reserved memory. In mapping CDS archive we first reserve enough memory then before mapping, release them. For cds archive and using class space, need split the whole space into two, that is, release the whole reserved space and do reservation to the two split spaces again, which is problematic that there is possibility other thread or system can kick in to take the released space.
>   The fix is the first step of two steps:
>    1) Do not split reserved memory;
>    2) Remove splitting memory.
>    This fix is first step, for Windows and use requested mapping address, reserved for cds archive and ccs on a contiguous space separately, so there is no need to call split. If any reservation failed, release them, go to other way, but do not do the 'real' split either. For Windows (and using class space), the reserved space will be released anyway. 
> 
> Tests:tier1-5,tier7

Yumin Qi has updated the pull request incrementally with one additional commit since the last revision:

  Add comment for reserve archive space and ccs on windows when mapping on required address

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/1657/files
  - new: https://git.openjdk.java.net/jdk/pull/1657/files/1d2f5959..dd9ae050

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=1657&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=1657&range=00-01

  Stats: 5 lines in 1 file changed: 5 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1657.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1657/head:pull/1657

PR: https://git.openjdk.java.net/jdk/pull/1657


More information about the hotspot-runtime-dev mailing list