Jason Volk
|
85d4a4f5ed
|
ircd::ctx: Further tweak interruption masking semantics.
|
2018-08-19 20:11:41 -07:00 |
|
Jason Volk
|
ff66bc441c
|
ircd::ctx: Stack uninterruptible's gracefully; assume context.
|
2018-08-19 20:11:41 -07:00 |
|
Jason Volk
|
10434c96c5
|
ircd::ctx: Consistent use of interruption.
|
2018-08-19 18:29:46 -07:00 |
|
Jason Volk
|
38c5679b5a
|
ircd::ctx: Use terminate() rather than interrupt() during ~context().
|
2018-08-19 18:18:15 -07:00 |
|
Jason Volk
|
1492770f6b
|
ircd::ctx: Various minor fixes.
|
2018-08-19 18:09:04 -07:00 |
|
Jason Volk
|
ccf5b79e6a
|
ircd::ctx: Allow this_ctx::interruption toggle to no-op if no ctx.
|
2018-08-19 17:43:25 -07:00 |
|
Jason Volk
|
b796668a77
|
ircd::ctx: Minor movement/cleanup.
|
2018-08-19 16:21:33 -07:00 |
|
Jason Volk
|
f4a4674daa
|
ircd::ctx::pool: Add a terminate(); cleanup del().
|
2018-08-19 15:55:35 -07:00 |
|
Jason Volk
|
141f4e1c0a
|
ircd::ctx: Move this branch condition.
|
2018-08-17 21:31:54 -07:00 |
|
Jason Volk
|
fe69a41255
|
ircd::ctx::pool: Fix dtor; use terminate() rather than interrupt().
|
2018-08-17 12:51:49 -07:00 |
|
Jason Volk
|
c8902654a0
|
ircd::ctx: Detach context in dtor on main/async stacks.
|
2018-05-28 07:04:06 -07:00 |
|
Jason Volk
|
5b52ac3103
|
ircd::ctx: Remove argument from continuation ctor.
|
2018-05-25 23:50:20 -07:00 |
|
Jason Volk
|
3746c25f20
|
ircd::ctx::ole: Add crude pooling.
|
2018-05-25 20:21:36 -07:00 |
|
Jason Volk
|
956c67beca
|
ircd::ctx: Use dock for better adjoindre semantics.
|
2018-05-22 18:06:18 -07:00 |
|
Jason Volk
|
f68f3bbb9c
|
ircd::ctx: Organize stack and profile related into specific structures.
|
2018-05-22 18:03:18 -07:00 |
|
Jason Volk
|
0e169fe4a4
|
ircd::ctx: Stop interrupt propagation at pool function base.
|
2018-05-22 05:49:38 -07:00 |
|
Jason Volk
|
d901257745
|
ircd::ctx: Use NOINTERRUPT flag for termination suppression as well.
|
2018-05-22 00:24:48 -07:00 |
|
Jason Volk
|
f17f9685ec
|
ircd::ctx::ole: Use interrupt suppression scope while offloaded.
|
2018-05-22 00:22:57 -07:00 |
|
Jason Volk
|
7e8ec1ca63
|
ircd::ctx: Support interrupt suppression; suite.
|
2018-05-22 00:22:56 -07:00 |
|
Jason Volk
|
5000397f12
|
ircd::ctx: Fix erroneous comment.
|
2018-05-07 12:37:44 -07:00 |
|
Jason Volk
|
e15ac0d1d3
|
ircd::ctx: Add state for counting context switches.
|
2018-05-07 12:36:33 -07:00 |
|
Jason Volk
|
003ecf6357
|
ircd: Remove / update various ctx::interrupted catch blocks for ctx::terminated.
|
2018-05-06 02:06:08 -07:00 |
|
Jason Volk
|
48055cb276
|
ircd::ctx: Add special termination interruption to yanagiba the stack.
|
2018-05-06 02:06:08 -07:00 |
|
Jason Volk
|
1059688d02
|
ircd::ctx: Add state for stack usage profiling; clarify some interfaces.
|
2018-05-05 23:14:11 -07:00 |
|
Jason Volk
|
f55304e0a1
|
ircd::ctx: Add slice total counter; move check_stack after timing sample.
|
2018-05-05 22:42:25 -07:00 |
|
Jason Volk
|
ea42490b4e
|
ircd::ctx: Consolidate slice timing to tsc; add public interfacing.
|
2018-05-05 22:24:25 -07:00 |
|
Jason Volk
|
ec0153c4da
|
ircd::ctx: Split into internal header.
|
2018-05-05 21:24:17 -07:00 |
|
Jason Volk
|
0f161f98e8
|
ircd::ctx::list: Fix misleading reference.
|
2018-04-28 03:26:07 -07:00 |
|
Jason Volk
|
dc5ac7c2ac
|
ircd::ctx: #ifdef away linkages for ctx assertions in NDEBUG builds.
|
2018-04-27 19:16:56 -07:00 |
|
Jason Volk
|
09c282fd8e
|
ircd::ctx: Add stack_usage_assertion; move stack_usage_here() into this_ctx::.
|
2018-04-27 19:09:26 -07:00 |
|
Jason Volk
|
2a7cb42c98
|
ircd::ctx: Minor ctx object semantic elaboration.
|
2018-04-20 00:44:45 -07:00 |
|
Jason Volk
|
1dcfff91a5
|
ircd::ctx: Expose stack_max() to public interface.
|
2018-04-19 21:42:54 -07:00 |
|
Jason Volk
|
35a1c62b1f
|
ircd::ctx: Add ctx::running()/waiting() for interface completeness.
|
2018-04-19 21:42:54 -07:00 |
|
Jason Volk
|
3b32d2170e
|
ircd::ctx: Give ctx::ctx the instance_list.
|
2018-04-19 21:42:54 -07:00 |
|
Jason Volk
|
281a9e1cfd
|
ircd::ctx: Place ctx::list node pointers into structure in ctx.
|
2018-04-19 21:42:54 -07:00 |
|
Jason Volk
|
793c24ce9e
|
ircd::ctx: Simplify list iteration API.
|
2018-04-19 14:47:56 -07:00 |
|
Jason Volk
|
fb6a4fc6ac
|
ircd::ctx: Bypass the exception_handler assertion if on bare metal.
|
2018-04-07 11:08:07 -07:00 |
|
Jason Volk
|
7995c20c50
|
ircd::ctx::pool: Change dispatching from notify_one() to notify().
|
2018-04-04 22:54:58 -07:00 |
|
Jason Volk
|
f07eed2ab9
|
ircd::ctx: Relax the assertion for uncaught exceptions on context switch.
|
2018-03-28 14:11:33 -07:00 |
|
Jason Volk
|
c6b9c06302
|
ircd::ctx: Avoid any possible ambiguities with location of *current.
|
2018-03-26 23:29:57 -07:00 |
|
Jason Volk
|
a2eb756548
|
ircd::ctx: Split this_ctx:: from ctx.h; minor reorg.
|
2018-03-25 02:04:42 -07:00 |
|
Jason Volk
|
441a692dfc
|
ircd::ctx: Device to allow context switching in exception handler.
|
2018-03-24 18:00:04 -07:00 |
|
Jason Volk
|
7dbfb061e9
|
ircd::ctx: Assert no yielding during exception handling due to ABI limitations.
|
2018-03-24 15:53:15 -07:00 |
|
Jason Volk
|
db8810e397
|
ircd::ctx: Integrate custom interruption action.
|
2018-03-23 22:17:10 -07:00 |
|
Jason Volk
|
4211671698
|
ircd::ctx: Reason about exception propagation at stack base; minor cleanup.
|
2018-03-16 21:42:22 -07:00 |
|
Jason Volk
|
3810b8d57f
|
ircd: Various exception assertions; minor cleanup.
|
2018-03-15 22:25:16 -07:00 |
|
Jason Volk
|
a48426e25d
|
ircd/modules: Migrate some log messages to new facilities.
|
2018-03-15 22:25:16 -07:00 |
|
Jason Volk
|
f7ecc4342b
|
ircd::ctx: Avoid any alloc for current reassertion on spawn.
|
2018-03-12 15:44:55 -07:00 |
|
Jason Volk
|
353ee9b80d
|
ircd::ctx: Spawn OLE thread lazily.
|
2018-02-07 12:16:17 -08:00 |
|
Jason Volk
|
230eb3fc7a
|
ircd::ctx::prof: Consistent warning message strings.
|
2018-02-05 21:24:36 -08:00 |
|