comparison src/share/vm/gc_implementation/g1/concurrentMark.cpp @ 20306:e02e18f40eae

8050973: CMS/G1 GC: add missing Resource and Handle mark Summary: Add Resource/HandleMark in the work() method of some AbstractGangTask to reclaim these resources earlier. Reviewed-by: tschatzl, goetz
author mdoerr
date Tue, 29 Jul 2014 10:26:09 +0200
parents 3bf2fc51186b
children bfba6779654b
comparison
equal deleted inserted replaced
20305:755930f931e3 20306:e02e18f40eae
2397 ReferenceProcessor* rp = _g1h->ref_processor_cm(); 2397 ReferenceProcessor* rp = _g1h->ref_processor_cm();
2398 assert(rp->processing_is_mt(), "shouldn't be here otherwise"); 2398 assert(rp->processing_is_mt(), "shouldn't be here otherwise");
2399 } 2399 }
2400 2400
2401 virtual void work(uint worker_id) { 2401 virtual void work(uint worker_id) {
2402 ResourceMark rm;
2403 HandleMark hm;
2402 CMTask* task = _cm->task(worker_id); 2404 CMTask* task = _cm->task(worker_id);
2403 G1CMIsAliveClosure g1_is_alive(_g1h); 2405 G1CMIsAliveClosure g1_is_alive(_g1h);
2404 G1CMKeepAliveAndDrainClosure g1_par_keep_alive(_cm, task, false /* is_serial */); 2406 G1CMKeepAliveAndDrainClosure g1_par_keep_alive(_cm, task, false /* is_serial */);
2405 G1CMDrainMarkingStackClosure g1_par_drain(_cm, task, false /* is_serial */); 2407 G1CMDrainMarkingStackClosure g1_par_drain(_cm, task, false /* is_serial */);
2406 2408