0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-06-26 22:08:20 +02:00
Commit graph

30 commits

Author SHA1 Message Date
Jason Volk e961b23d1e ircd::ctx::dock: Add options for waiters; support queuing strategies. 2023-02-20 20:15:44 -08:00
Jason Volk 5a35d63b64 ircd::ctx::dock: Deduplicate prologue/epilogue in wait() suite. 2023-02-19 17:39:32 -08:00
Jason Volk 8b6679c5e9 ircd::ctx::dock: Eliminate inlined template complex; optimize linkages. 2022-06-29 18:20:46 -07:00
Jason Volk cd95b7cd8d ircd::ctx: Specify inline linkage for various templates to prevent any dynsyms. 2020-07-11 15:41:57 -07:00
Jason Volk f9015b8336 ircd::ctx::dock: Minor reorg. 2020-05-02 23:57:53 -07:00
Jason Volk c3349b9d40 ircd::ctx::dock: Add convenience interface for interrupt/terminate/notify. 2020-02-19 16:16:53 -08:00
Jason Volk df79d61395 ircd::util: Elide std::function overhead for util::unwind suite. 2019-12-03 13:39:49 -08:00
Jason Volk 864afd78e4 ircd::ctx: Fix trivial branch sequence causing L2 => I1 miss; hot section. 2019-10-09 22:07:17 -07:00
Jason Volk ba11205f2c ircd::ctx::dock: Add query to find if ctx is waiting on dock. 2019-09-10 11:06:16 -07:00
Jason Volk b6149b429e ircd::ctx::dock: Add noexcept to interface observers.
ircd::ctx: Propagate noexcept on hot leafs;

ircd::ctx::list: Deinline size().
2019-09-10 11:06:11 -07:00
Jason Volk 77648137e9 Revert "ircd: Remove use of all unwind::exceptional and unwind::nominal devices."
This reverts commit 4f243826c2.
2019-03-22 21:06:28 -07:00
Jason Volk 4f243826c2 ircd: Remove use of all unwind::exceptional and unwind::nominal devices. 2019-03-12 18:41:05 -07:00
Jason Volk 4871928bfa ircd::ctx: Partial de-inline of dock methods. 2019-01-13 13:57:34 -08:00
Jason Volk 10d59dec9a ircd::ctx::dock: Make notify() an unconditional notify rather than direct jump. 2018-10-21 01:00:41 -07:00
Jason Volk d2fbc30d4e ircd::ctx: Use better notify member here. 2018-09-18 21:41:21 -07:00
Jason Volk be7a20d39a ircd::ctx: Move any renotifying to the ctx::dock itself. 2018-09-18 21:35:27 -07:00
Jason Volk 83cbfea75d ircd::ctx: Minor cleanup. 2018-08-15 08:21:03 -07:00
Jason Volk 26b33a1845 ircd::ctx: Remove the cv_status enum. 2018-03-26 23:29:58 -07:00
Jason Volk be624ca7f6 Update Copyrastafaris. 2018-02-05 21:24:34 -08:00
Jason Volk 6fc8de8587 ircd::ctx: Enforce semantics in mutex / shared_mutex; assertion related. 2018-01-17 03:33:08 -08:00
Jason Volk dcd36f8200 ircd::ctx: Replace the std::deque with a ctx::list for ctx::dock's queue. 2018-01-13 23:45:36 -08:00
Jason Volk 7723e45de5 ircd::ctx: Minor commentary. 2017-11-30 11:23:45 -08:00
Jason Volk b207b9e909 ircd: Rename ircd::scope to ircd::unwind. 2017-09-24 18:16:41 -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 54d6793f59 Update various documentation and comments. 2017-09-24 18:16:33 -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 a880e2e43e ircd::ctx: Add minor commentary. 2017-08-23 14:59:27 -06:00
Jason Volk c604b391be ircd::ctx: Support direct context switching without enqueueing with ios. 2017-03-30 16:04:19 -07:00
Jason Volk b0bc025ced ircd::ctx: Add notify() to dock to rotate the waiters in contrast to notify_one(). 2016-11-13 16:32:42 -08:00
Jason Volk 2f645941a8 ircd::ctx: Move ctx headers into directory. 2016-11-13 16:29:45 -08:00
Renamed from include/ircd/ctx_dock.h (Browse further)