[crac] RFR: Introduce per-Priority Context with different policies [v2]

Anton Kozlov akozlov at openjdk.org
Mon May 29 18:22:39 UTC 2023


> A follow-up work for #60:
> 
> * Each priority now has a dedicated context, so contextes may provide different policies. CALL_SITE now uses new CriticalUnorderedContext that runs beforeCheckpoint on concurrent registration, fixes [1]. Whether or not CALL_SITE needs to be registered to at all is an open question and out of scope of this PR.
> * the Global Context reverted from BlockingOrderedContext to OrderedContext, as that may have a huge impact on users. Probably we'll want to expose blocking/criticalUnorderd context along the global one, or at some point expose an implementation. But this is also out of scope of the PR.
> * hierachy of the Context implementations are cleaned up a bit [2]
> 
> The JDKContext is now just a holder of ClaimedFDs, I'll address this in a follow-up that depends on this Context follow-up.
> 
> [1] https://github.com/openjdk/crac/pull/60#issuecomment-1545588281
> [2] https://github.com/openjdk/crac/pull/60#discussion_r1185510445

Anton Kozlov has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 18 commits:

 - Merge remote-tracking branch 'a/crac/context-update' into context-update
 - Cleanup
 - Cleanup
 - Update
 - All done
 - Revert global Context
 - Final touches
 - Interrupt does not work
 - Update test
 - Merge remote-tracking branch 'jdk/crac/crac' into context-update
 - ... and 8 more: https://git.openjdk.org/crac/compare/cdf4c35d...5182ba92

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

Changes: https://git.openjdk.org/crac/pull/74/files
 Webrev: https://webrevs.openjdk.org/?repo=crac&pr=74&range=01
  Stats: 1011 lines in 30 files changed: 375 ins; 551 del; 85 mod
  Patch: https://git.openjdk.org/crac/pull/74.diff
  Fetch: git fetch https://git.openjdk.org/crac.git pull/74/head:pull/74

PR: https://git.openjdk.org/crac/pull/74


More information about the crac-dev mailing list