RFR: 8255917: runtime/cds/SharedBaseAddress.java failed "assert(reserved_rgn != 0LL) failed: No reserved region" [v5]
Yumin Qi
minqi at openjdk.java.net
Fri Dec 11 05:17:33 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 with a new target base due to a merge or a rebase. The pull request now contains 35 commits:
- Added test case; Fixed an nmt issue caused by bitmap region not released after archive loading failed; Unmap bitmap after archive failure. Fixed reserved region name for adding reserved region.
- Add total_space_rs, total reserved space to release_reserved_spaces and reserve_address_space_for_archives, made changes to check failed output on test.
- 8253762: JFR: getField(String) should be able to access subfields
Reviewed-by: mgronlun
- 8257670: sun/security/ssl/SSLSocketImpl/SSLSocketLeak.java reports leaks
Reviewed-by: jnimeh
- 8257796: [TESTBUG] TestUseSHA512IntrinsicsOptionOnSupportedCPU.java fails on x86_32
Reviewed-by: kvn
- 8257211: C2: Enable call devirtualization during post-parse phase
Reviewed-by: kvn, neliasso, thartmann
- 8257572: Deprecate the archaic signal-chaining interfaces: sigset and signal
Reviewed-by: ihse, alanb, dcubed, erikj
- 8257718: LogCompilation: late_inline doesnt work right for JDK 8 logs
Reviewed-by: redestad, kvn
- 8257799: Update JLS cross-references in java.compiler
Reviewed-by: jjg
- 8254939: macOS: unused function 'replicate4_imm'
Reviewed-by: redestad, thartmann
- ... and 25 more: https://git.openjdk.java.net/jdk/compare/29a09c89...0421943d
-------------
Changes: https://git.openjdk.java.net/jdk/pull/1657/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1657&range=04
Stats: 8183 lines in 159 files changed: 4666 ins; 2763 del; 754 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 security-dev
mailing list