0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-12-27 07:54:05 +01:00
Commit graph

320 commits

Author SHA1 Message Date
Jason Volk
8b6679c5e9 ircd::ctx::dock: Eliminate inlined template complex; optimize linkages. 2022-06-29 18:20:46 -07:00
Jason Volk
5a4a395fc2 Add noexcept to various lambdas (gcc-11). 2022-06-29 14:42:42 -07:00
Jason Volk
5a11c31d97 Revert "ircd: ISO C++ requires template on destructor names out-of-line." (gcc-11/12)
This reverts commit e3e3bd7b09.

Add -Wno-dtor-name to clang warning discovery section.
2022-06-20 17:26:39 -07:00
Jason Volk
e3e3bd7b09 ircd: ISO C++ requires template on destructor names out-of-line. 2022-06-17 21:11:54 -07:00
Jason Volk
f4979e42f9 ircd::ctx: Fix extra semicolons on scope. 2022-06-17 21:11:54 -07:00
Jason Volk
e51b855f2b ircd: Various symbol surface reductions and sorting. 2022-06-17 21:11:53 -07:00
Jason Volk
cb8362ba51 ircd: Correct/abridge various comments. 2022-06-17 21:11:52 -07:00
Jason Volk
d4e41218b0 ircd::ctx::pool: Simplify notify on work completion. 2021-05-11 20:56:09 -07:00
Jason Volk
d115d88e6c ircd::ctx: Simplify main thread conditions with tls bit. 2021-03-16 12:58:22 -07:00
Jason Volk
446f319391 ircd::ctx::posix: Trapdoor complex allowing real pthreads to work again. 2021-01-04 01:12:49 -08:00
Jason Volk
e37a775e9b ircd::ctx::posix: Add interface to toggle hook; split header internal/external. 2021-01-04 01:12:39 -08:00
Danilo Spinella
d8ff6172ef ircd/ctx/posix.h: Add typedef for __clockid_t to fix build on musl
__clockid_t is not POSIX, add it as a typedef to clockid_t, when needed.
2020-12-23 03:56:43 -08:00
Jason Volk
07ec766ff9 ircd::ios: Consolidate dispatch/post/defer interfaces; minor fixes. 2020-12-20 06:02:50 -08:00
Jason Volk
e91c845de5 ircd::ctx: Minor move misplaced comment. [ci skip]
ircd:Ⓜ️:acquire: Remove stale comment. [ci skip]
2020-12-12 18:18:28 -08:00
Jason Volk
fbc3ab87e9 ircd::ctx: Add interface to change name; implement posix handler. 2020-11-13 21:07:14 -08:00
Jason Volk
30796e5729 ircd::buffer: Fix template name conflicts for clang-11; apply inline linkages.
ircd::json::tuple: Fix template name related for clang-11.

ircd::ctx: Fix template related for clang-11; inline linkages.

ircd:Ⓜ️🪝 Fix template related for clang-11.
2020-10-29 04:06:59 -07:00
Jason Volk
dc388a0f09 ircd::ctx: Use vg::stack registration in stack allocator. 2020-10-16 14:32:06 -07:00
Jason Volk
339e86d2b8 ircd::ctx: Hoist various function static descriptor objects; inline courtesy yield(). 2020-10-16 05:19:14 -07:00
Jason Volk
2eb4b84019 ircd::ctx: Add missing shared_state already_t w/ value ctor. 2020-10-15 04:55:38 -07:00
Jason Volk
ad41fb69a9 ircd::ctx: Support user-supplied stacks. 2020-10-14 02:22:45 -07:00
Jason Volk
28eaf63543 ircd::ctx: Convey allocated stack for context to context at entry. 2020-10-14 02:22:45 -07:00
Jason Volk
6c89faee13 ircd::ctx::posix: Enforce noexcept on the full surface. 2020-09-29 16:09:10 -07:00
Jason Volk
669c8d0d0f ircd::ctx: Remove leaf attribute; use hot section attribute in unit. 2020-08-23 02:32:54 -07:00
Jason Volk
07830f1413 ircd::ctx: Integrate slice cycle counters with ios. 2020-08-21 10:43:04 -07:00
Jason Volk
52013c1ee0 ircd::ctx::list: Reduce out-of-line accessor surface. 2020-07-11 18:51:19 -07:00
Jason Volk
6ec9b2a783 ircd: Specify explicit noexcept for gcc-10 issue. 2020-07-11 17:57:33 -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
8ffa5c55a5 ircd::ctx::latch: Replace closure w/ simple bind statement. 2020-07-11 14:07:08 -07:00
Jason Volk
505fe310a8 ircd::ctx: Inline various codepaths leading to flags(ctx).
ircd::ctx: Inline cheap prof::get() wrappings.
2020-06-18 03:56:09 -07:00
Jason Volk
e938081404 ircd::ctx: Add watchdog log facility. 2020-05-24 17:42:32 -07:00
Jason Volk
ac42d4df13 ircd::ctx: Measure and report epoch span for slice_usage_warning. 2020-05-24 17:14:02 -07:00
Jason Volk
f070e3b706 ircd::ctx: Condition on RB_DEBUG rather than NDEBUG for slice_usage_warning tool. 2020-05-24 17:14:02 -07:00
Jason Volk
9213d31f1d ircd::ctx: Inline interruptible(ctx, ...) manipulators. 2020-05-19 15:55:18 -07:00
Jason Volk
3c96120e72 ircd::ctx: Add some noexcept; minor comment justification. 2020-05-18 19:57:54 -07:00
Jason Volk
00fe4baa2a ircd::ctx: Add direct flags reference accessor to interface. 2020-05-18 19:57:54 -07:00
Jason Volk
ce3a57bfce ircd::ctx::uninterruptible: Add defaulted runtime bool construction. 2020-05-18 18:43:17 -07:00
Jason Volk
b3dbf0cd01 ircd::ctx: Start an interpositionable posix thread interface. 2020-05-04 16:09:39 -07:00
Jason Volk
18f215d3f0 ircd: Move main_thread assertion related to ctx; adjust condition. 2020-05-04 16:09:39 -07:00
Jason Volk
77dc612735 ircd::ctx: Various assertions for current context. 2020-05-04 13:15:45 -07:00
Jason Volk
a776565ce0 ircd::ctx: Fixes and assertions for shared_mutex upgrade lockable semantics. 2020-05-04 13:15:45 -07:00
Jason Volk
926795f01a ircd::ctx: Use context pointer for mutex/shared_mutex acquisition state. 2020-05-04 13:15:45 -07:00
Jason Volk
d72124f7c6 ircd::ctx: Bring condition_variable up to parity with ctx::dock. 2020-05-04 13:15:45 -07:00
Jason Volk
f9015b8336 ircd::ctx::dock: Minor reorg. 2020-05-02 23:57:53 -07:00
Jason Volk
32230ed2d4 ircd::ctx: Profile peak stack usage at slice leave event. 2020-04-23 12:41:39 -07:00
Jason Volk
5a27958fa0 ircd::ctx: Unify access to ctx::stack, expose structure; remove cruft. 2020-04-23 12:41:38 -07:00
Jason Volk
6679b66806 ircd::prof: Move ctx::syscall_usage_warning into prof. 2020-03-06 15:43:24 -08:00
Jason Volk
a6131d1268 ircd::ctx: Split sleep()/wait() suites into headers. 2020-02-28 09:11:06 -08:00
Jason Volk
628b194151 ircd::ctx: Relax member access. 2020-02-24 16:44:15 -08:00
Jason Volk
c3349b9d40 ircd::ctx::dock: Add convenience interface for interrupt/terminate/notify. 2020-02-19 16:16:53 -08:00
Jason Volk
43f5ebe8e3 ircd::ctx: Inline the interruptible/uninterruptible instanced interface. 2020-02-19 08:40:15 -08:00