mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-20 02:54:35 +02:00
6792421: assert(_bitMap->isMarked(addr+size-1),inconsistent Printezis mark)
The CMS concurrent precleaning and concurrent marking phases should work around classes that are undergoing redefinition. Reviewed-by: ysr, tonyp
This commit is contained in:
parent
d981bd442b
commit
39b23ff0a0
7 changed files with 64 additions and 11 deletions
|
@ -42,6 +42,7 @@ class Thread;
|
|||
class CollectedHeap : public CHeapObj {
|
||||
friend class VMStructs;
|
||||
friend class IsGCActiveMark; // Block structured external access to _is_gc_active
|
||||
friend class constantPoolCacheKlass; // allocate() method inserts is_conc_safe
|
||||
|
||||
#ifdef ASSERT
|
||||
static int _fire_out_of_memory_count;
|
||||
|
@ -82,8 +83,6 @@ class CollectedHeap : public CHeapObj {
|
|||
// Reinitialize tlabs before resuming mutators.
|
||||
virtual void resize_all_tlabs();
|
||||
|
||||
debug_only(static void check_for_valid_allocation_state();)
|
||||
|
||||
protected:
|
||||
// Allocate from the current thread's TLAB, with broken-out slow path.
|
||||
inline static HeapWord* allocate_from_tlab(Thread* thread, size_t size);
|
||||
|
@ -142,6 +141,7 @@ class CollectedHeap : public CHeapObj {
|
|||
PRODUCT_RETURN;
|
||||
virtual void check_for_non_bad_heap_word_value(HeapWord* addr, size_t size)
|
||||
PRODUCT_RETURN;
|
||||
debug_only(static void check_for_valid_allocation_state();)
|
||||
|
||||
public:
|
||||
enum Name {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue