Integrated: 8259668: Make SubTasksDone use-once

Albert Mingkun Yang ayang at openjdk.java.net
Tue Feb 16 08:50:38 UTC 2021


On Wed, 3 Feb 2021 16:26:33 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

> After JDK-8260574, a instance of `SubTasksDone` is never reused, so part of its APIs could be revised: `clear()` and the code calling it is removed.
> 
> With this patch, `all_tasks_completed` contains only assertion. Kim suggested moving this assertion logic to `~SubTasksDone`, but that could defer the assertion violation. For example, in the case of `G1FullGCMarkTask::work`, there is a significant amount of code running btw the instance when all subtasks are claimed (where `all_tasks_completed` is called in this PR) and `~SubTasksDone`. In the interest of having more precise location where bugs may lie, I have kept `all_tasks_completed` in the original place. More comments on this are welcome.

This pull request has now been integrated.

Changeset: 3cbd16de
Author:    Albert Mingkun Yang <ayang at openjdk.org>
Committer: Thomas Schatzl <tschatzl at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/3cbd16de
Stats:     63 lines in 4 files changed: 11 ins; 39 del; 13 mod

8259668: Make SubTasksDone use-once

Reviewed-by: tschatzl, kbarrett

-------------

PR: https://git.openjdk.java.net/jdk/pull/2383


More information about the hotspot-dev mailing list