RFR: Loom preempt3

Coleen Phillimore coleenp at openjdk.java.net
Wed Jun 16 16:36:53 UTC 2021


This is my cleaned up version of preemption where one thread suspends another, walks the stack and allocates the frozen frame. There are some asserts to verify this preempt situation and the jump in handle_special_runtime_exit_condition might need to be moved somewhere safer.  Robbin wasn't happy with the fact that while suspended, another thread can handshake this thread and modify the stack, even though the loom code doesn't do that.  I think this is better for now though and hasn't significantly changed in a while, so I'd like to check this in for now.

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

Commit messages:
 - Fix some asserts, add another.
 - Preempt changes to use block_suspend (+whitespace changes)
 - Add thread specific suspension mechanism

Changes: https://git.openjdk.java.net/loom/pull/48/files
 Webrev: https://webrevs.openjdk.java.net/?repo=loom&pr=48&range=00
  Stats: 405 lines in 8 files changed: 277 ins; 54 del; 74 mod
  Patch: https://git.openjdk.java.net/loom/pull/48.diff
  Fetch: git fetch https://git.openjdk.java.net/loom pull/48/head:pull/48

PR: https://git.openjdk.java.net/loom/pull/48


More information about the loom-dev mailing list