< prev index next >

src/share/vm/gc/g1/g1ParScanThreadState.hpp

Print this page
rev 8789 : [mq]: 8073052-Rename-and-clean-up-the-allocation-manager-hierarchy-in-g1Allocator
rev 8790 : imported patch 8003237-no-wait-for-free-list
rev 8791 : imported patch jon-fast-evac-failure

*** 69,78 **** --- 69,82 ---- // surviving words. base is what we get back from the malloc call size_t* _surviving_young_words_base; // this points into the array, as we use the first few entries for padding size_t* _surviving_young_words; + // Indicates whether in the last generation (old) there is no more space + // available for allocation. + bool _last_gen_is_full; + #define PADDING_ELEM_NUM (DEFAULT_CACHE_LINE_SIZE / sizeof(size_t)) DirtyCardQueue& dirty_card_queue() { return _dcq; } G1SATBCardTableModRefBS* ctbs() { return _ct_bs; }
*** 186,201 **** inline void dispatch_reference(StarTask ref); // Tries to allocate word_sz in the PLAB of the next "generation" after trying to // allocate into dest. State is the original (source) cset state for the object ! // that is allocated for. // Returns a non-NULL pointer if successful, and updates dest if required. HeapWord* allocate_in_next_plab(InCSetState const state, InCSetState* dest, size_t word_sz, ! AllocationContext_t const context); inline InCSetState next_state(InCSetState const state, markOop const m, uint& age); public: oop copy_to_survivor_space(InCSetState const state, oop const obj, markOop const old_mark); --- 190,209 ---- inline void dispatch_reference(StarTask ref); // Tries to allocate word_sz in the PLAB of the next "generation" after trying to // allocate into dest. State is the original (source) cset state for the object ! // that is allocated for. Previous_plab_refill_failed indicates whether previously ! // a PLAB refill into "state" failed. // Returns a non-NULL pointer if successful, and updates dest if required. + // Also determines whether we should continue to try to allocate into the various + // generations or just end trying to allocate. HeapWord* allocate_in_next_plab(InCSetState const state, InCSetState* dest, size_t word_sz, ! AllocationContext_t const context, ! bool previous_plab_refill_failed); inline InCSetState next_state(InCSetState const state, markOop const m, uint& age); public: oop copy_to_survivor_space(InCSetState const state, oop const obj, markOop const old_mark);
< prev index next >