--- old/src/hotspot/share/gc/shared/cardTable.cpp 2020-02-12 12:49:41.821596619 +0100 +++ new/src/hotspot/share/gc/shared/cardTable.cpp 2020-02-12 12:49:41.420583974 +0100 @@ -61,6 +61,9 @@ assert(card_size <= 512, "card_size must be less than 512"); // why? _covered = new MemRegion[_max_covered_regions]; + if (_covered == NULL) { + vm_exit_during_initialization("Could not allocate card table covered region set."); + } } CardTable::~CardTable() { @@ -85,6 +88,9 @@ _cur_covered_regions = 0; _committed = new MemRegion[_max_covered_regions]; + if (_committed == NULL) { + vm_exit_during_initialization("Could not allocate card table committed region set."); + } const size_t rs_align = _page_size == (size_t) os::vm_page_size() ? 0 : MAX2(_page_size, (size_t) os::vm_allocation_granularity());