From 81a453ec8212ff31e89d3499b9fe6b76f69452a1 Mon Sep 17 00:00:00 2001 From: Stefan Karlsson Date: Fri, 11 Aug 2017 23:29:14 +0200 Subject: [PATCH] 8186035: Klass::decode_klass_not_null() asserted on bad oop Reviewed-by: tschatzl, sjohanss --- hotspot/src/share/vm/gc/g1/g1ConcurrentMark.inline.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hotspot/src/share/vm/gc/g1/g1ConcurrentMark.inline.hpp b/hotspot/src/share/vm/gc/g1/g1ConcurrentMark.inline.hpp index b950666ef3f..6f6b1b39d92 100644 --- a/hotspot/src/share/vm/gc/g1/g1ConcurrentMark.inline.hpp +++ b/hotspot/src/share/vm/gc/g1/g1ConcurrentMark.inline.hpp @@ -47,7 +47,7 @@ inline bool G1ConcurrentMark::mark_in_next_bitmap(HeapRegion* const hr, oop cons } // Some callers may have stale objects to mark above nTAMS after humongous reclaim. - assert(obj->is_oop(true /* ignore mark word */), "Address " PTR_FORMAT " to mark is not an oop", p2i(obj)); + // Can't assert that this is a valid object at this point, since it might be in the process of being copied by another thread. assert(!hr->is_continues_humongous(), "Should not try to mark object " PTR_FORMAT " in Humongous continues region %u above nTAMS " PTR_FORMAT, p2i(obj), hr->hrm_index(), p2i(hr->next_top_at_mark_start())); HeapWord* const obj_addr = (HeapWord*)obj;