Skip to content
This repository has been archived by the owner on Feb 2, 2023. It is now read-only.
/ jdk18u Public archive

Commit

Permalink
8283555: G1: Concurrent mark accesses uninitialized BOT of closed arc…
Browse files Browse the repository at this point in the history
…hive regions

Backport-of: 19f01ab70133d244422684f63f118249178bce4a
  • Loading branch information
Thomas Schatzl committed Mar 29, 2022
1 parent 4b0818c commit 9f39b4b
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/hotspot/share/cds/filemap.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2237,6 +2237,11 @@ void FileMapInfo::fixup_mapped_heap_regions() {
"Null closed_heap_regions array with non-zero count");
G1CollectedHeap::heap()->fill_archive_regions(closed_heap_regions,
num_closed_heap_regions);
// G1 marking uses the BOT for object chunking during marking in
// G1CMObjArrayProcessor::process_slice(); for this reason we need to
// initialize the BOT for closed archive regions too.
G1CollectedHeap::heap()->populate_archive_regions_bot_part(closed_heap_regions,
num_closed_heap_regions);
}

// do the same for mapped open archive heap regions
Expand All @@ -2249,11 +2254,6 @@ void FileMapInfo::fixup_mapped_heap_regions() {
// fast G1BlockOffsetTablePart::block_start operations for any given address
// within the open archive regions when trying to find start of an object
// (e.g. during card table scanning).
//
// This is only needed for open archive regions but not the closed archive
// regions, because objects in closed archive regions never reference objects
// outside the closed archive regions and they are immutable. So we never
// need their BOT during garbage collection.
G1CollectedHeap::heap()->populate_archive_regions_bot_part(open_heap_regions,
num_open_heap_regions);
}
Expand Down

1 comment on commit 9f39b4b

@openjdk-notifier
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.