0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-07-05 01:58:35 +02:00
Commit graph

63 commits

Author SHA1 Message Date
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
Jason Volk 69427d7e43 ircd::ctx: Enable ctx::prof on debug builds only. 2018-02-05 21:24:35 -08:00
Jason Volk 3ba527079b ircd::ctx: Sample rdtsc to complement profile warning output. 2018-02-05 21:24:35 -08:00
Jason Volk be624ca7f6 Update Copyrastafaris. 2018-02-05 21:24:34 -08:00
Jason Volk fd2a7974e8 ircd: Minor cleanup; comments; spacing. 2018-01-26 19:27:12 -08:00
Jason Volk 8f3483391e ircd: Minor log suppressions via comment. 2018-01-17 21:38:17 -08:00
Jason Volk df0e59a5e0 ircd::ctx: Add custom intrinsic list structure for contexts. 2018-01-13 23:45:36 -08:00
Jason Volk 1ddf0f546a ircd: Update various comments / documentation. 2017-12-12 14:59:40 -07:00
Jason Volk ae289de529 ircd::ctx: Improve the pool counters. 2017-11-30 11:23:46 -08:00
Jason Volk c16a6e8baa ircd::ctx: Adjust prof defaults; minor cleanup. 2017-11-30 11:23:43 -08:00
Jason Volk 99e431c8da ircd::ctx: Further fix and clarify the POST/DETACH leak potential. 2017-11-30 11:23:42 -08:00
Jason Volk 26800d5db4 ircd::ctx: Improve the spawn sequence to avoid complications. 2017-11-30 11:23:42 -08:00
Jason Volk 32e0d3c5df ircd::ctx: Improve spawning; fix bug. 2017-11-30 11:23:41 -08:00
Jason Volk c157967559 irct::ctx: Add this basic pool debug. 2017-10-19 00:58:43 -07:00
Jason Volk 124f7ea12a ircd::ctx: Add utils for getting this_ctxt name and id; truncate default name literal. 2017-10-15 21:12:58 -07:00
Jason Volk e3963da007 ircd: Various comments added/modified. 2017-10-11 18:18:20 -07:00
Jason Volk eb56befef0 ircd: Improve thread id related; add public functions to post to ios. 2017-10-11 18:18:19 -07:00
Jason Volk 19451ab914 ircd::ctx: shared_mutex; peek / view / shared_view; fixes. 2017-10-03 04:17:10 -07:00
Jason Volk c4a6addd5a ircd::ctx: Add critical_assertion debugging tool. 2017-10-03 04:17:08 -07:00
Jason Volk b309793ed0 ircd::ctx: Add some docs; minor cleanup. 2017-10-03 04:17:07 -07:00
Jason Volk b207b9e909 ircd: Rename ircd::scope to ircd::unwind. 2017-09-24 18:16:41 -07:00
Jason Volk 7f548cee1c ircd: Make asio header; comments; add special continuation for yielding to asio. 2017-09-24 18:16:39 -07:00
Jason Volk 1acd278632 ircd::ctx: Updates; add ctx::view; add preliminary ctx::fault; various reorg. 2017-09-24 18:16:38 -07:00
Jason Volk 6cd58b0d6a ircd: Update various comments / minor cleanup. 2017-09-24 18:16:32 -07:00
Jason Volk f98be1582d ircd::ctx: Expose stack usage functions to user. 2017-09-08 03:47:50 -07:00
Jason Volk d9a4f06bf6 ircd: Employ namespace scope extensions from c++1z/gnu++14.
This is not a move to c++17. If the compiler happens to have support
for c++17 namespace scope resolution, they have been kind enough to
backport it to gnu++14. This limits our support for really old c++14
compilers, but that was limited anyway. GCC 6.1 and clang 3.6 tested.
2017-09-08 03:47:46 -07:00
Jason Volk b6d51b89dd ircd::ctx: Patch issues with direct jump. 2017-08-23 15:52:15 -06:00
Jason Volk a880e2e43e ircd::ctx: Add minor commentary. 2017-08-23 14:59:27 -06:00
Jason Volk b579d7dfc3 ircd::ctx: Add strand()/notify() with threadsafe_t. 2017-04-02 20:52:30 -07:00
Jason Volk e4f258314a fixup! ircd::ctx: Fixes for the thread-unsafety of asio::steady_timer. 2017-03-30 21:14:59 -07:00
Jason Volk 33b2cd8f70 ircd::ctx: Fixes for the thread-unsafety of asio::steady_timer. 2017-03-30 16:04:19 -07:00
Jason Volk c604b391be ircd::ctx: Support direct context switching without enqueueing with ios. 2017-03-30 16:04:19 -07:00
Jason Volk d9521c4dc0 ircd::ctx: Fix bug where interrupts are lost before context spawns. 2017-03-30 16:04:19 -07:00