-
Notifications
You must be signed in to change notification settings - Fork 393
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Check if current phase concurrent when trying to yield
When we consider yielding in Concurrent Scavenger (prematurely terminating scanning loop, while in concurrent phase, due to external Exclusive Access Request being raised), we can now rely on explicit flag that tells us we are really in concurrent phase. Yielding while in STW phases is meaningless. Previously we checked if we were not in STW mode by checking that exclusive access was in 'pending' state, but exclusive VM access actually can be pending even state is already 'exclusive'. This is true when exclusive VM access was requested by external thread. In this case, we could incorrectly conclude we are not in concurrent mode, and never yield. Signed-off-by: Aleksandar Micic <amicic@ca.ibm.com>
- Loading branch information
Showing
3 changed files
with
7 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters