Jason Volk
76a8e7f91e
ircd: 🆑 Add basic stats for primary context.
2021-04-22 12:27:56 -07:00
Jason Volk
3c95a88bf7
ircd: 🆑 Allow zero dimension to ignore exec item.
2021-04-22 12:27:56 -07:00
Jason Volk
e68c8a95ed
ircd: 🆑 Skip clRelease calls to destruct null handles.
2021-04-22 12:27:56 -07:00
Jason Volk
dbf19fcf4b
ircd: 🆑 :kern: Add argument setter template for various/integral inputs.
2021-04-22 12:27:56 -07:00
Jason Volk
6ca5f8b18f
ircd: 🆑 :code: Add binary construction.
2021-04-22 12:27:56 -07:00
Jason Volk
7561c3a6e0
ircd: 🆑 Upgrade queue creation related; mute deps list creation for now.
2021-04-22 12:27:56 -07:00
Jason Volk
034170cb30
ircd: 🆑 Add status argument to work::wait(); improve dtors.
2021-04-22 12:27:56 -07:00
Jason Volk
54c1be6ec3
ircd: 🆑 Add conf item for queue profiling flag.
2021-04-22 12:27:56 -07:00
Jason Volk
21472fcc5b
ircd: 🆑 Add buffer to buffer copy to interface.
2021-04-22 12:27:56 -07:00
Jason Volk
4d27393703
ircd: 🆑 Improve build error reporting; split subs from exception handler.
2021-04-22 12:27:56 -07:00
Jason Volk
07dd934602
ircd: 🆑 :exec: Add the no-implicit-dependency option for exec.
2021-04-22 12:27:56 -07:00
Jason Volk
1c8a7ac645
ircd: Use buffer::move for possibly overlapping uses.
2021-04-22 12:27:56 -07:00
Jason Volk
51d2ac4b33
ircd: 🆑 Reorder the kern::range lists for common construction; minor fixes.
2021-04-22 12:27:56 -07:00
Jason Volk
e403565029
ircd: 🆑 Improve event wait related.
2021-04-22 12:27:34 -07:00
Jason Volk
519d2e3f45
ircd: 🆑 Refactor for ctx::dock notify.
2021-03-17 18:55:56 -07:00
Jason Volk
a21589654a
ircd: 🆑 Re-attempt pre-SVM mapping w/ synchronous closure.
2021-03-17 18:55:56 -07:00
Jason Volk
d69f8ffb9c
ircd: 🆑 :data: Add basic property interface wrappings.
2021-03-17 18:55:56 -07:00
Jason Volk
60e66cb273
ircd: 🆑 Move work wait function out of dtor into member; assert handle.
2021-03-17 18:55:56 -07:00
Jason Volk
c0072f732c
configure: Add function check for mlock(2), mmap(2).
2021-03-17 18:55:56 -07:00
Jason Volk
047eb1a384
ircd: 🆑 Preempt callback; improve status checks, error code.
2021-03-17 18:55:56 -07:00
Jason Volk
5d6554b1a3
ircd: 🆑 Improve data construction; add initialization xfer to ctor.
2021-03-16 12:58:22 -07:00
Jason Volk
fe666dc52c
ircd::ctx::ole: Add worker pool scaling on demand.
2021-03-16 12:58:22 -07:00
Jason Volk
ca1d715702
ircd: 🆑 Expose enable conf item to interface.
2021-03-16 12:58:22 -07:00
Jason Volk
699d15e8c9
ircd: 🆑 Add options for exec; improve dependency related.
2021-03-16 12:58:22 -07:00
Jason Volk
59106f9456
ircd::fs::map: Add hugepage related to interface opts.
2021-03-16 12:58:22 -07:00
Jason Volk
fdd052da87
ircd::fs::map: Add MAP_LOCKED wrapper to interface opts.
2021-03-16 12:58:22 -07:00
Jason Volk
43b85dad87
ircd: 🆑 Offload blocking wait to thread; integrate dependencies with ircd::ctx.
2021-03-16 12:58:22 -07:00
Jason Volk
5b004be146
ircd::mods: Move unload success log to debug.
2021-03-16 12:58:22 -07:00
Jason Volk
d115d88e6c
ircd::ctx: Simplify main thread conditions with tls bit.
2021-03-16 12:58:22 -07:00
Jason Volk
7e188fa7f6
ircd: 🆑 Fix write buffer call.
2021-03-16 12:58:22 -07:00
Jason Volk
dea1118bda
ircd: 🆑 Build code on construction unless coerced otherwise.
2021-03-16 12:58:22 -07:00
Jason Volk
4da7d2ae43
ircd::gpt: Add task struct; mmap cached model directly; improve init.
2021-03-16 12:58:22 -07:00
Jason Volk
6f3adfd160
ircd::fs::map: Add static opts instance w/ default ctor argument.
2021-03-16 12:58:22 -07:00
Jason Volk
734948863f
ircd::gpt::vocab: Add token debug string tool.
2021-03-09 04:50:19 -08:00
Jason Volk
33a1ffd4bf
ircd::gpt: Add basic interface; add options, context.
2021-03-09 04:50:19 -08:00
Jason Volk
4458235dfa
ircd::gpt: More Matrix Than Matrix.
2021-03-09 04:50:19 -08:00
Jason Volk
53c4260a21
ircd::gpt: Add Basic Latin (lower) and C0 replacement LUT; various.
2021-03-09 04:50:19 -08:00
Jason Volk
925eee5209
ircd::fpe: Add classification reflector; additional noexcept linkages.
2021-03-07 23:35:58 -08:00
Jason Volk
4abf868b39
ircd: Move db fixes compile flags into make variable.
2021-03-07 23:35:58 -08:00
Jason Volk
014d0281d7
ircd::math: Start supplemental library; move log2 constexprs from util.
2021-03-05 13:02:12 -08:00
Jason Volk
b55d670af1
ircd::spirit: Fixes for thread_local generator_state linkage related.
2021-03-05 13:02:12 -08:00
Jason Volk
cc9df943a7
ircd: Refactor lex_cast impl to boost spirit rather than boost conversions.
2021-03-05 13:02:12 -08:00
Jason Volk
29b99dcf4d
ircd::gpt: Split vocab related into separate unit.
2021-03-02 11:13:59 -08:00
Jason Volk
59f9aca938
ircd::json: Relax fractional precision lexing.
2021-03-01 16:52:57 -08:00
Jason Volk
5a187da4b1
ircd::fs::dev: Add condition to skip non-device name without exception.
2021-03-01 16:52:57 -08:00
Jason Volk
57f9d3fdfb
ircd::gpt: Add vocabulary tokenization; byte-pair merge encoding for natural language.
2021-02-26 14:52:33 -08:00
Jason Volk
3621fe025a
ircd::json: Fix masking around some skipped characters in the unescaper.
2021-02-26 14:52:33 -08:00
Jason Volk
ee904d9b33
ircd::simd: Add preliminary character print utils to suite.
2021-02-25 14:38:52 -08:00
Jason Volk
4915ced6ce
ircd::icu: Add bulk vector utility overloads.
2021-02-25 14:38:52 -08:00
Jason Volk
f35e0749dd
ircd::utf: Simplify scaling to emulated extended vectors.
2021-02-25 14:38:52 -08:00
Jason Volk
47f6053a76
ircd::db: Eliminate the file mgmt thread interposition.
2021-02-13 02:20:35 -08:00
Jason Volk
90ac0d1a63
ircd: 🆑 Simplify various casts; minor cleanup.
2021-02-11 03:21:08 -08:00
Jason Volk
328fce79a3
ircd: 🆑 Abort the 1.x CL_MAP from interface for now.
2021-02-11 03:21:08 -08:00
Jason Volk
d338e589f5
ircd::allocator: Add trapdoor on size and alignment for hugepage advise.
2021-02-10 23:38:44 -08:00
Jason Volk
b39f574ba9
ircd::info: Probe characteristics for transparent hugepage support.
2021-02-10 02:14:15 -08:00
Jason Volk
336200d646
ircd::db::prefetcher: Increase worker stack size.
2021-02-04 21:25:10 -08:00
Jason Volk
5fb3710d4f
ircd::resource: Add third debuglog for actual request end after chunks xfer.
2021-02-03 18:01:15 -08:00
Jason Volk
39c2c1fc58
ircd::resource: Improve log msg clarity; label branch.
2021-02-03 18:01:15 -08:00
Jason Volk
a1420b25a3
ircd::http: Add log level severity(category) convenience tool; tweak category table.
2021-02-03 18:01:15 -08:00
Jason Volk
66639ee119
ircd::png: Elaborate callback surface; add logger to prevent libpng writes to stderr.
2021-01-23 10:57:01 -08:00
Jason Volk
ddfba500ad
ircd::png: Add acTL info detection to decide animation from buffer.
2021-01-21 22:08:32 -08:00
Jason Volk
690e641e90
ircd::fs: Fix erroneous/redundant fallthrough to blocking flush.
2021-01-21 20:00:32 -08:00
Jason Volk
7aff759abc
ircd::png: Add unit; start header; stub.
2021-01-15 19:55:28 -08:00
Jason Volk
1d46cf9f5f
ircd: 🆑 Enable configure by default; disable runtime by default.
2021-01-15 19:55:28 -08:00
Jason Volk
78133c59cd
configure: Add libpng detections and configurations.
2021-01-15 18:01:53 -08:00
Jason Volk
3549ab473a
ircd: 🆑 Load the pipe dynamically after configuring environment.
2021-01-14 23:44:49 -08:00
Jason Volk
c34045c9d8
ircd: 🆑 Prevent notify to same context in callback.
2021-01-14 23:44:31 -08:00
Jason Volk
869ce974bf
ircd: 🆑 Add primary interface component handle classes.
2021-01-12 13:55:45 -08:00
Jason Volk
5ad43d8817
ircd: 🆑 Add library interfacing utils; add init, infolog device banner.
...
ircd:🆑 Add context and device queue related init/dtor.
2021-01-08 01:37:45 -08:00
Jason Volk
3e5f297605
ircd::log: Add condition to further negate mask negation of stderr for startup in -quiet mode.
2021-01-08 01:37:45 -08:00
Jason Volk
0d641aca00
ircd::log: Fix comments; named constants for width values.
2021-01-08 01:37:45 -08:00
Jason Volk
4d02eb2286
ircd: 🆑 Add unit; start namespace.
2021-01-04 02:31:41 -08:00
Jason Volk
e44316ba1e
ircd::prof: Prevent kern time warning during static initialization.
2021-01-04 02:16:33 -08:00
Jason Volk
d52d6bc042
ircd::db: Add conf item to disable file deletion on open; add to -safe mode diagnostic.
2021-01-04 01:12:49 -08: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
Jason Volk
b924da17a4
ircd::ios: Increase default emption frequency.
2020-12-25 08:25:33 -08:00
Jason Volk
6830b9aff1
ircd::resource: Optimize chunk termination w/ iov.
2020-12-25 07:30:10 -08:00
Jason Volk
16ce9a820e
ircd::client: Add write overload for iov arguments.
2020-12-25 07:30:10 -08:00
Jason Volk
6987e30cf6
ircd::server: Add conf items for peer socket options.
2020-12-25 07:30:10 -08:00
Jason Volk
2c48499db7
ircd::server: Add sock_opts in peer open_opts; move constant; minor cleanup.
2020-12-25 06:44:31 -08:00
Jason Volk
75a88976dc
ircd::resource: Add TCP_NODELAY flush opportunity at completion boundary.
2020-12-25 05:33:59 -08:00
Jason Volk
227ba21341
ircd::resource: Add DELAYED_ACK flag to method; support TCP_QUICKACK opportunity.
2020-12-25 05:33:59 -08:00
Jason Volk
a63fcfa5b4
ircd::net: Add interface to TCP_QUICKACK if supported.
2020-12-25 05:33:59 -08:00
Jason Volk
44bee11fc0
ircd::resource::response: Add flush/push option to chunked::finish().
2020-12-24 18:09:31 -08:00
Jason Volk
f30c5f381b
ircd::net: Add tools to query socket write buffering related.
2020-12-24 18:09:30 -08:00
Jason Volk
7e81806f29
ircd::net: Minor reorg available()/readable() into read.h.
2020-12-24 18:09:30 -08:00
Jason Volk
3b90a4a5a9
ircd::db: Fix erroneous false hits from db::cached().
2020-12-24 00:36:43 -08:00
Danilo Spinella
27f1bdc6c6
ircd/server: Fix build with LibreSSL
2020-12-23 03:56:43 -08:00
Danilo Spinella
92c434e061
ircd/fs.cc: Add cast to fix build with gcc-10
2020-12-23 03:56:43 -08:00
Danilo Spinella
d87e7a5e32
irdc/rfc3986: Fix build with latest Boost
...
From `boost/spirit/home/karma/nonterminal/rule.hpp`:
BOOST_STATIC_ASSERT_MSG(
!is_reference<attr_type>::value && !is_const<attr_type>::value,
"Const/reference qualifiers on Karma rule attribute are meaningless");
2020-12-23 03:56:43 -08:00
Jason Volk
78cbd244c4
ircd::db: Lower the global write mutex to database instance member.
2020-12-23 03:56:43 -08:00
Jason Volk
7bacbe82c7
ircd: Reorder ios to precede fs/prof units.
2020-12-23 03:56:43 -08:00
Jason Volk
1f164304a6
ircd::db::prefetcher: Integrate ticker items into ircd::stats system.
2020-12-23 03:56:43 -08:00
Jason Volk
9f0c081ac8
ircd::stats: Add signed integer, chrono specializations; use panic exception.
2020-12-23 03:56:43 -08:00
Jason Volk
dfa75cd421
ircd::stats: Abstract items into templates w/ special instantiations.
2020-12-23 03:56:43 -08:00
Jason Volk
d6d518666e
ircd::db: Inline various undersized; mark un-inlinable for hot section.
2020-12-23 03:56:43 -08:00
Jason Volk
6991ecc764
ircd: Remove various trivial tls bufs.
2020-12-22 18:40:30 -08:00
Jason Volk
b503766f1a
ircd: Additional ICP targets for json::type/object::begin()/array::begin().
2020-12-21 01:19:33 -08:00
Jason Volk
22b30b1a0a
ircd::db::database: Track state of WriteStallCondition in our column instance.
2020-12-21 00:44:14 -08:00
Jason Volk
d884757155
ircd::db: Use computed level0 triggers; indicate rocksdb invariant from warnlog.
2020-12-21 00:44:14 -08:00
Jason Volk
510b8d4aad
ircd::db: Remove yield in several callbacks; assertion for stoppage.
2020-12-21 00:44:14 -08:00
Jason Volk
a049063562
ircd::db: Additional debuglog in releasemode; tweak formats; improve msgs.
2020-12-21 00:22:22 -08:00
Jason Volk
07ec766ff9
ircd::ios: Consolidate dispatch/post/defer interfaces; minor fixes.
2020-12-20 06:02:50 -08:00
Jason Volk
099c7754ff
ircd::stats: Simplify f7945918c; eliminate sort.
2020-12-20 06:01:19 -08:00
Jason Volk
9655a6311f
ircd: Simplify the async main init fiasco w/ continuation callback.
2020-12-18 17:41:26 -08:00
Jason Volk
96fa20244b
ircd::stringops: Fix missing boolmask in character replace transforms.
2020-12-18 04:04:01 -08:00
Jason Volk
f7945918c6
ircd::stats: Use vector for item iteration; add name convenience member.
2020-12-18 04:04:01 -08:00
Jason Volk
5ee8405117
ircd::resource: Integrate method stats into ircd::stats.
2020-12-18 02:45:03 -08:00
Jason Volk
1f2abfb64a
ircd::ios: Integrate descriptor::stats into ircd::stats system.
2020-12-18 02:42:07 -08:00
Jason Volk
e80629c914
ircd: Rename all ios::descriptors w/ consistent dot namespacing.
...
ircd: Hoist various ios::descriptors out of function-static duration.
2020-12-18 02:42:07 -08:00
Jason Volk
af59cc1378
ircd::fs::aio: Integrate stats structure into ircd::stats system.
2020-12-18 02:42:07 -08:00
Jason Volk
3eb664bbe9
ircd::stats: Use trapping exception for developer errors.
2020-12-18 02:41:56 -08:00
Jason Volk
28f0195b59
ircd::mods: Disable interruption on unload(); guard unloading list; noexcept.
2020-12-15 16:56:07 -08:00
Jason Volk
c0892e79f4
ircd::resource::method: Disable interruption while waiting for idle.
2020-12-15 16:56:07 -08:00
Jason Volk
6f66ff5bac
ircd::resource::response::chunked: Support user-supplied buffer constructions.
2020-12-15 16:56:07 -08:00
Jason Volk
1949e6e37d
ircd::fs::aio: Post the chaser w/ defer for more delay.
2020-12-14 00:37:01 -08:00
Jason Volk
b54d4950cc
ircd::fs::aio: Optimize system call pattern; eliminate exclusive calls to poll(2).
2020-12-14 00:37:01 -08:00
Jason Volk
6696693f8b
ircd::ios: Add legit framework for core loop optimizations. (related 7df5592ebe
)
2020-12-14 00:36:32 -08:00
Jason Volk
a10429c15f
ircd: Improve terminate interface; simplify impl.
2020-12-13 10:45:34 -08:00
Jason Volk
956ea6edb6
ircd::ctx: Add constexpr toggles covering all possible branches.
2020-12-13 08:29:33 -08:00
Jason Volk
799c4e1691
ircd::ctx: Add ios profile debuglog indicating ctx::wake().
2020-12-13 08:29:33 -08:00
Jason Volk
d947b5e724
ircd::ios: Add missing context switch for dispatch; assertions.
2020-12-13 08:29:33 -08:00
Jason Volk
9ca664d231
ircd::ios: Split headers into directory; minor reorg.
...
ircd::ios: Move profile constexprs into namespace.
2020-12-13 08:29:29 -08:00
Jason Volk
befe5ac750
ircd::ios: Fix use of default static descriptor instead of passed argument.
2020-12-12 18:18:28 -08:00
Jason Volk
af102fcab6
ircd::ios: Increase descriptor name width in debuglog.
2020-12-12 00:35:36 -08:00
Jason Volk
ddfac32b85
ircd::ios: Elide std::function for hot descriptor calls.
2020-12-11 22:50:57 -08:00
Jason Volk
5151a3b934
ircd::ios: Inline additional handler related definitions.
2020-12-11 22:50:57 -08:00
Jason Volk
b798192c15
ircd::rand: Improve xoshiro256p default values; improve interface consistency.
...
ircd::rand: Reorg iface; deinline mersenne twister so it's not emitted everywhere.
2020-12-11 22:50:57 -08:00
Jason Volk
972502fd19
ircd::json: Inline trivial array::empty(); label branch expect.
2020-12-10 08:34:22 -08:00
Jason Volk
c5bcbe5afd
ircd::ios: Add constexpr verbose debug; add inline enqueue(); reorg.
...
ircd::ios: Simplify fault handler; reuse leave() codepath.
2020-12-09 02:16:50 -08:00
Jason Volk
bf3fa0a122
ircd::log: Propagate noexcept to interface vlog().
2020-12-09 02:16:50 -08:00
Jason Volk
e0a64b47ee
ircd::ios: Add logging facility for subsystem.
2020-12-07 14:18:42 -08:00
Jason Volk
d194635a5e
ircd::server: Fix dynamic chunked encoding buffers not reused, affecting large transfers.
2020-12-07 12:06:57 -08:00
Jason Volk
29b041e3a2
ircd::prof: Split prof::psi from prof_linux unit.
2020-12-06 10:36:47 -08:00
Jason Volk
6f8d2c7578
ircd::fs::prof::psi: Eliminate non-trivial thread_local.
2020-12-06 10:36:47 -08:00
Jason Volk
7751f9d0fa
ircd::db: Optimize db::cached() query.
2020-12-06 10:27:27 -08:00
Jason Volk
afe314a408
ircd::net::dns::resolver: Prevent retry of ServFail to the same server.
2020-12-06 10:27:27 -08:00
Jason Volk
bba89fd3e5
ircd::log: Fix level::CRITICAL breakthroughs to stdio; minor cleanup.
2020-12-06 10:27:27 -08:00
Jason Volk
ff9375a408
ircd: Allow several debug msgs in release build; tweak facilities.
2020-12-01 00:00:54 -08:00
Jason Volk
9fa174fe89
ircd::server: Improve logging of actual target host names in handlers.
2020-11-29 14:07:55 -08:00
Jason Volk
478a871326
ircd: Add ICP for json::object::const_iterator::operator++ to profile.
2020-11-28 15:44:18 -08:00
Jason Volk
770fabcacd
ircd: Add target to preprocess PGO data bundled in text form.
...
matrix: Add target to preprocess PGO data bundled in text form.
2020-11-28 14:35:45 -08:00
Jason Volk
d0edf478ab
ircd::log: Disable output to file by default for ERROR/WARNING.
2020-11-28 13:16:44 -08:00
Jason Volk
716f26216d
configure: Consolidate applications of -fmax-errors/-ferror-limit.
2020-11-28 12:42:32 -08:00
Jason Volk
ded8f05064
ircd::tokens: Simplify interface w/ closure template; eliminate named closure.
...
ircd::tokens: Minor interface cleanup; inline linkages.
2020-11-27 20:06:19 -08:00
Jason Volk
b00a96d0ce
ircd::json: Simplify grammars negated based on prior assumptions.
2020-11-27 18:31:18 -08:00
Jason Volk
910dafbb85
configure: Improve profile build related.
2020-11-27 17:29:54 -08:00
Jason Volk
0f851d1d98
ircd: Use thin mode for LTO.
...
matrix: Use thin mode for LTO.
2020-11-27 17:29:28 -08:00
Jason Volk
00bd72e3ff
ircd::http: Fix erroneous binding name.
2020-11-27 16:58:20 -08:00