RFR: 8252104: parallel heap inspection for ShenandoahHeap [v2]
Zhengyu Gu
zgu at openjdk.java.net
Fri Sep 11 13:56:55 UTC 2020
On Fri, 11 Sep 2020 10:54:42 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> Hi @shipilev,
>> I have update a PR that trying to reuse code in serial and parallel heap iteration.
>> would you like to review again? Thanks
>> -Lin
>
> Thank you, we'll take a look next week.
Hi Lin,
1) The patch does not compile with assertion on
@@ -1490,7 +1490,7 @@ private:
cl->do_object(obj);
obj->oop_iterate(&oops);
}
- assert(q.is_empty(), "should be empty");
+ assert(q->is_empty(), "should be empty");
2) I don't like to export following methods as public. Instead, you can declare ShenandoahParallelObjectIterator as
friend class of ShenandoahHeap.
void scan_roots_for_iteration(Stack<oop, mtGC>* oop_stack, ObjectIterateScanRootClosure* oops);
bool prepare_aux_bitmap_for_iteration();
void reclaim_aux_bitmap_for_iteration();
3) Please rename ObjectIterateParScanClosure to ShenandoahObjectIterateParScanClosure for code convention
4) There is no point to seed mark roots if prepare_aux_bitmap_for_iteration() failed in
ShenandoahParallelObjectIterator constructor.
-------------
PR: https://git.openjdk.java.net/jdk/pull/67
More information about the serviceability-dev
mailing list