Jason Volk
2a730b2799
ircd: 🆑 :exec: Add more specific size/offset argument for map closure related.
2021-04-22 12:27:56 -07:00
Jason Volk
762e3f097a
ircd: 🆑 Use override size from opts; zero size for no-op.
2021-04-22 12:27:56 -07:00
Jason Volk
d5f1a490db
ircd: 🆑 Add flush and sync exec opts; reorg post-submit related.
2021-04-22 12:27:56 -07:00
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
Jason Volk
d16dca495f
ircd::magick: Limit request dimensions to the image dimensions ( closes #161 ).
2020-11-19 19:06:04 -08:00
Jason Volk
d861132d95
ircd::magick: Fix aspect on scale method. ( #161 )
2020-11-19 19:06:04 -08:00
Jason Volk
5152cfb574
ircd::server: Close peer w/ cached error based on cloudflare 522 et al.
2020-11-18 21:02:49 -08:00
Jason Volk
119f5a88fc
ircd::fs::path: Translate boost exceptions coming out of tool impls.
2020-11-16 07:22:12 -08:00
Jason Volk
6a5dbfe228
ircd::fs::path: Additional reorg; add safe path() overload; add missing parent().
2020-11-15 02:27:33 -08:00
Jason Volk
34cf3e032e
ircd::fs::path: Add absolute() to interface.
2020-11-14 00:59:09 -08:00
Jason Volk
cb223b97c0
ircd::fs::path: Add canonical() suite to interface; minor reorg.
2020-11-14 00:59:09 -08:00
Jason Volk
b447b9dd42
ircd: Additional replace() overloads; use consistent integral character arguments.
2020-11-13 22:46:36 -08:00
Jason Volk
f92f72cc73
ircd::json: Add proper utf16 surrogate unescape transform.
2020-11-13 21:08:31 -08:00
Jason Volk
14a20955ec
ircd: Deinline some replace() stringops.
2020-11-13 21:07:14 -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
a9c6c76467
ircd::json: Implement string unescaping; streaming transform.
2020-11-13 21:07:14 -08:00
Jason Volk
5f1b46aa8b
ircd::server: Fix explicit port overriding service query (regression f0f25ff236
).
2020-11-11 22:49:39 -08:00
Jason Volk
da0464e101
ircd::server: Reorg peer::resolve() as unary using member data.
2020-11-11 22:49:39 -08:00
Jason Volk
e20d1d48c4
ircd::json: Fix parallel transform over control sequence.
2020-11-11 22:49:39 -08:00
Jason Volk
5958e73ff8
ircd::json: Add integrated type-checking overloads to reduce call count.
2020-11-11 22:49:39 -08:00
Jason Volk
471de2e6b6
ircd::db::env: Restart writes after interrupt across whole env.
2020-11-11 13:11:57 -08:00
Jason Volk
e7bdcedd29
ircd::rfc3986: Use uppercase hex characters for encoding.
2020-11-08 03:48:57 -08:00
Jason Volk
076cfb32f5
ircd::info: Fix use of _sv outside of ircd:: (aarch64).
2020-11-08 02:25:31 -08:00
Jason Volk
5335c6b29f
ircd::net::dns::resolver: Slightly more aggressive rate tweak.
2020-11-06 22:06:16 -08:00
Jason Volk
04f6e9692a
ircd::net::dns::resolver: Improve timeout cycle; avoid false positives under load.
2020-11-06 22:06:16 -08:00
Jason Volk
27d0c25f9b
ircd::net::dns::resolver: Split recv into function from work loop.
2020-11-06 22:04:46 -08:00
Jason Volk
749647bb89
ircd::server: Limit the cancelled head size to copy.
2020-11-06 22:04:46 -08:00
Jason Volk
c9b1b37505
ircd::http: Increase buffer size; report proper error for exceeding.
2020-11-05 22:10:54 -08:00
Jason Volk
41fecb72e9
ircd::server: Replace underscored conf item names.
2020-11-05 22:10:54 -08:00
Jason Volk
f0f25ff236
ircd::server: Re-resolve DNS for peer after TTL expiration.
2020-11-05 22:10:54 -08:00
Jason Volk
d6200a7ac3
ircd::server: Add DNS expiration TTL state to peer.
2020-11-05 22:10:54 -08:00
Jason Volk
ba24dd1018
ircd::net: End exception before calling user in any handler.
2020-11-05 22:10:54 -08:00
Jason Volk
f3886d60d8
ircd: Replace callsites w/ template deduced mutable_cast.
2020-11-05 22:10:53 -08:00
Jason Volk
857979744f
ircd::server: Add conf item to toggle whole unit.
2020-11-05 22:10:53 -08:00
Jason Volk
b4613b8132
ircd::server: Move conf item into namespace; minor reorg.
2020-11-05 22:10:53 -08:00
Jason Volk
536a496bee
ircd::allocator: Add incore(); replace as fs::fincore() impl.
2020-11-05 22:10:53 -08:00
Jason Volk
a0a3eeb16e
ircd::allocator: Minor reorg; dedup alignment utils.
2020-11-05 22:10:53 -08:00
Jason Volk
92b3ba4643
ircd::json: Minor simplify error message.
2020-11-05 22:10:53 -08:00
Jason Volk
cd2a71d3c2
construct: Remove -checkdb flag; replace w/ -diagnostic checkdb.
2020-11-05 22:10:53 -08:00
Jason Volk
5d55188294
ircd::db::database::events: Add log level case for unrecoverable severity.
2020-10-31 12:05:51 -07:00
Jason Volk
eaefcceefb
ircd::db::database: Pair 'recover' open value with WAL skip consistency.
2020-10-29 07:49:04 -07:00
Jason Volk
90c2ecd2e1
ircd::prof: Remove/reduce function thread-local buffers.
2020-10-29 04:06:59 -07:00
Jason Volk
686721d0dc
ircd::info: Replace anonymous construction w/ fixed_buffer.
2020-10-29 03:51:56 -07:00
Jason Volk
91e3f8a2b8
ircd::net::addrs: Fix attribute portage.
2020-10-29 03:51:56 -07:00
Jason Volk
e918bf06bb
ircd::exec: Synchronize join to fix waitpid()=ECHILD.
2020-10-28 04:35:49 -07:00
Jason Volk
1e1f4982fa
ircd::db::database::wal_filter: Improve debug output.
2020-10-28 03:31:55 -07:00
Jason Volk
bbefffe2ac
ircd::ctx: Hoist adjoindre class member to static.
2020-10-28 03:31:55 -07:00
Jason Volk
f026e81a07
ircd: Instrument against string_view(string&&) impossible construction..
2020-10-28 03:31:55 -07:00
Jason Volk
975c54a1a3
ircd::db::env: Remove irrelevant information in debuglog.
2020-10-27 22:44:06 -07:00
Jason Volk
87b1b764c1
ircd::db: Add convenience overload debug(rocksdb::WriteBatch)
2020-10-27 22:44:06 -07:00
Jason Volk
71879a9fa1
ircd::db: Allow conditional debuglog message in release-mode; minor cleanup.
2020-10-27 22:44:05 -07:00
Jason Volk
ea5ebb4a12
ircd::exec: Set PDEATHSIG in the child for crash action.
2020-10-27 07:55:31 -07:00
Jason Volk
ed5875c869
ircd::json: Remerge tool header with index header; use value argument.
2020-10-27 01:17:06 -07:00
Jason Volk
7e22894437
ircd::http: Add default User-Agent header if none specified.
2020-10-25 00:09:59 -07:00
Jason Volk
fea49e07df
ircd::exec: Set signal mask for the child process.
2020-10-24 06:26:38 -07:00
Jason Volk
f4558a84e6
ircd::exec: Implement callback handler suite; async wait().
2020-10-24 05:41:46 -07:00
Jason Volk
9593a925a8
ircd::exec: Improve signal/join process.
2020-10-24 05:41:42 -07:00
Jason Volk
52750835be
ircd::exception: Fix inconsistent format string.
2020-10-24 01:59:11 -07:00
Jason Volk
7c931b880e
ircd::exec: Additional signals; exception handling.
2020-10-20 23:20:41 -07:00
Jason Volk
86a8509b26
ircd: Ⓜ️ :exec: Add options structure; add logging/detach related options.
2020-10-20 23:20:41 -07:00
Jason Volk
e5b0fe25c7
ircd::fs: Add is_exec() to interface.
2020-10-20 23:20:41 -07:00
Jason Volk
1d97263066
ircd::proc: Add basic subprocess interface; ios integration.
2020-10-20 23:20:41 -07:00
Jason Volk
59495a74bf
ircd::json: Fix unadjusted serial size for object::member property names.
2020-10-20 23:20:41 -07:00
Jason Volk
e923054e85
ircd::fmt: Relax string specifier grammar from printable to non-control.
2020-10-20 22:19:34 -07:00
Jason Volk
51fdf2bfdf
ircd::rfc3986::decoder: Relax decode restriction to all non-control.
2020-10-20 22:19:34 -07:00
Jason Volk
9d45118628
ircd::rfc3986::decoder: Relax unreserved characters to non-control.
2020-10-20 21:48:06 -07:00
Jason Volk
6fce2adc69
ircd::info: Add explicit compiler version in init infolog.
2020-10-17 16:50:31 -07:00
Jason Volk
6da204b063
construct: Fix exception propagation; interrupt masking during runlevel change.
2020-10-17 16:01:36 -07:00
Jason Volk
dc388a0f09
ircd::ctx: Use vg::stack registration in stack allocator.
2020-10-16 14:32:06 -07:00
Jason Volk
f6bc11b76a
ircd::vg: Add stack register/deregister to interface.
...
ircd::vg: Use extern const bool for active(); minor reorg.
2020-10-16 14:32:06 -07:00
Jason Volk
8759f9d209
ircd::vg: Split allocator::vg to vg:: in header.
2020-10-16 10:05:23 -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
9b36a87741
ircd::json: Allow trailing valid whitespace in tight validator.
2020-10-16 02:40:39 -07:00
Jason Volk
9d1741f5b4
ircd::server: Add asynchronous prelink() to interface.
2020-10-16 02:40:39 -07:00
Jason Volk
2ad38e0865
ircd::resource: Strip both sides during params string assignment.
2020-10-16 02:40:39 -07:00
Jason Volk
8d174ea80d
ircd::ctx: Workaround ircd::size() assertion due to begin(buf)=nullptr.
...
ircd::ctx: Fix error.
2020-10-15 06:09:31 -07:00
Jason Volk
543ff4d820
ircd::db::database::sst: Improve compression percentage related.
2020-10-14 21:07:03 -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
5d23b8657e
ircd::ctx: Hook the asio spawn helper.
2020-10-14 02:22:45 -07:00
Jason Volk
dba80e17b1
ircd::ctx: Hook the stack allocator.
2020-10-14 02:22:45 -07:00
Jason Volk
560eb12f68
ircd::db::database::sst: Add file id integer to info struct.
2020-10-14 02:22:45 -07:00
Jason Volk
08572e750f
ircd::db: Add descriptor item for write_buffer_blocks; tweak values/defaults.
2020-10-13 14:55:38 -07:00
Jason Volk
e856d6e36f
ircd::db: Optimize valid() for likely fast backward condition.
2020-10-12 18:47:24 -07:00
Jason Volk
bc00c111f1
ircd::db: Convert to jump complex due to random access penalties over rocksdb options struct.
2020-10-12 18:39:45 -07:00
Jason Volk
cd8d034240
ircd::resource: Add untokenized params view to request struct.
2020-10-12 18:07:39 -07:00
Jason Volk
6b915da4ab
ircd::db: Optimize internal linkages; valid() / make_opts() on the hotpath.
2020-10-11 17:36:03 -07:00
Jason Volk
7be03dda17
ircd::db: Move conf item into namespace.
2020-10-11 17:36:03 -07:00
Jason Volk
841e7dc35b
ircd::db: Split db::database into unit.
2020-10-11 11:42:48 -07:00
Jason Volk
159fa7bd0f
ircd::fs: Make support infolog dump uniform with similar msgs.
2020-10-10 06:02:32 -07:00
Jason Volk
019010336b
ircd::simd: Add constexpr feature support suite.
2020-10-10 05:54:15 -07:00
Jason Volk
a015872df7
ircd: Disassociate compaction disabling from write_avoid.
2020-10-10 04:44:01 -07:00
Jason Volk
c49e546be5
ircd::simd: Categorical interface renaming for stream related.
2020-10-10 00:43:59 -07:00
Jason Volk
de0650d3f7
ircd: Reorg simd.h / buffer.h interface dependency relationship.
2020-10-10 00:43:59 -07:00
Jason Volk
13fcd8b3a5
ircd::net: Fix canon string inconsistencies; perform service lookups.
2020-10-08 20:49:49 -07:00
Jason Volk
d1c2e0baeb
ircd::ctx: Belay marking entry point until after initial interrupt check.
2020-10-08 20:49:49 -07:00
Jason Volk
bfe864663c
ircd::ctx: Use proper source for epoch counter.
2020-10-08 20:49:49 -07:00
Jason Volk
648563209f
ircd::info: Split hardware info by platform; improve feature string related.
...
ircd::info: Display when vg detected in info string.
2020-10-08 20:49:49 -07:00
Jason Volk
af82529e13
configure: Support OpenCL.
...
configure: Support MesaOpenCL.
2020-10-07 20:46:02 -07:00
Jason Volk
989b7633b5
ircd::ctx::posix: Use non-dce'd debuglog for thread create.
2020-10-07 15:12:12 -07:00
Jason Volk
e5b1e31f7e
ircd::db: ifdef rate_limiter verbose debug msg.
2020-10-07 15:12:12 -07:00
Jason Volk
12771f1965
ircd::db: Clamp column arena size option.
2020-10-07 03:41:55 -07:00
Jason Volk
7e7eb14e0b
ircd::rand: Add vector convenience interface.
2020-10-07 03:08:28 -07:00
Jason Volk
7f63dc07ef
ircd::simd: Simplify stream template; deduce unaligned type.
2020-10-06 19:15:42 -07:00
Jason Volk
e69ad0b49a
ircd::rand: Add fill(mutable_buffer) to interface.
2020-10-06 16:25:03 -07:00
Jason Volk
767322dc37
ircd::rand: Simplify interface; comments/cleanup.
2020-10-06 16:25:03 -07:00
Jason Volk
9f38a58402
ircd::ios: Use assertions on descriptor dtor.
2020-10-06 00:02:29 -07:00
Jason Volk
25b5d8763d
ircd::info: Remove redundant. ( e472a4a5df
)
2020-10-03 10:06:11 -07:00
Jason Volk
441d3aaf92
ircd::net: Reduce trivial/unnecessary thread_local; debuglog stack buffers.
2020-10-03 02:31:20 -07:00
Jason Volk
432fcd9cd8
ircd::net::socket: Hoist function-static instances of ios::descriptor.
2020-10-03 02:31:20 -07:00
Jason Volk
e472a4a5df
ircd::info: Gather basic idents on aarch64. ( closes #132 )
2020-10-02 03:18:06 -07:00
Jason Volk
2bcea3de2f
ircd::utf: Elide instantiation at 512-bit width on aarch64 due to clang-10 issue.
2020-10-01 21:04:29 -07:00
Jason Volk
f6f8c2494f
ircd::prof: Fix missing #ifdef for fences.
2020-10-01 20:26:16 -07:00
Jason Volk
6d8a4ab5d6
ircd::db: Preliminary compression string-options after space in descriptor value.
2020-10-01 19:15:15 -07:00
Jason Volk
d594719e1f
ircd::server: Fix chunked encoding offset error.
2020-10-01 00:02:16 -07:00
Jason Volk
b7b2c44973
ircd: Improve restart-assist to convey different program options.
2020-10-01 00:02:16 -07:00
Jason Volk
fecd009ffb
ircd: Ⓜ️ :db: Fix accounting for index compression.
...
Revert 1051e740cc
.
2020-09-30 19:40:29 -07:00
Jason Volk
6c89faee13
ircd::ctx::posix: Enforce noexcept on the full surface.
2020-09-29 16:09:10 -07:00
Jason Volk
00350ab96c
ircd::prof: Fix util::pretty() call (debugmode regression 512b12caf1
).
2020-09-29 10:38:09 -07:00
Jason Volk
ca7b7b0c61
ircd::db: Move computed properties from console into info struct.
2020-09-29 08:01:14 -07:00
Jason Volk
88808f597a
ircd::info: Additional string for compiler name; architecture related.
2020-09-29 00:19:42 -07:00
Jason Volk
4dbb550e89
ircd::fs: Add support for O_EXCL; add exclusive to fd::opts.
2020-09-28 22:33:46 -07:00
Jason Volk
9c82dad2f7
ircd::fs: Add missing O_TRUNC -> std::ios::trunc in options parseback.
2020-09-28 22:33:46 -07:00
Jason Volk
95cb3df160
ircd::fs: Rename nocreate to create in fd::opts.
2020-09-28 22:33:46 -07:00
Jason Volk
a509334c2d
ircd::b64: Simplify condition; replace lateral() w/ any().
2020-09-28 22:33:46 -07:00
Jason Volk
742c29500f
ircd::json: Replace simd::lateral used at inefficient lane types.
2020-09-28 00:27:30 -07:00
Jason Volk
512b12caf1
ircd::util: Refactor pretty(duration) interface; internal template.
2020-09-27 18:12:51 -07:00
Jason Volk
1276717be3
ircd::json: Add branch condition for number value to eliminate calls.
2020-09-27 15:44:53 -07:00
Jason Volk
3fedfaeb8d
ircd: Add conf item to convey contextual diagnostic options.
2020-09-27 14:57:07 -07:00
Jason Volk
30e5a0110c
ircd::spirit: Add template id to custom_parser; add three specializations per unit for now.
2020-09-27 14:57:07 -07:00
Jason Volk
9768bbd1c6
ircd::db::allocator: Fix conditions for jemalloc #ifdefs. ( #165 )
2020-09-25 10:02:39 -07:00
Jason Volk
e6d5832ca6
ircd::icu: Use int32_t rather than size_t for macro argument. ( #165 )
2020-09-25 06:13:50 -07:00
Jason Volk
af2115eee5
ircd::db: Add version compatibility for table_properties::num_deletions.
2020-09-24 13:20:24 -07:00
Jason Volk
a11a5613bb
ircd::db: Reorg database options.
2020-09-24 02:58:32 -07:00
Jason Volk
245921c2b6
ircd::db: Yield context on stall condition callback to relieve some pressure.
2020-09-24 02:58:31 -07:00
Jason Volk
03b7e5af1e
ircd::server: Fix missing copy of partial dynamic chunk head to cancellation.
2020-09-23 20:57:22 -07:00
Jason Volk
dd452e1770
ircd::server: Additional assertions.
2020-09-23 17:41:10 -07:00
Jason Volk
25cd479a7c
configure: Fix conditions for compiling libicu dependent units. ( fixes #165 )
2020-09-23 17:40:53 -07:00
Jason Volk
3c0c0283df
ircd::db: Elide unnecessary exported symbols.
2020-09-21 20:50:58 -07:00
Jason Volk
7201a11c7a
ircd::db: Optimize iterator comparison operators.
2020-09-21 20:50:58 -07:00
Jason Volk
2741ab785c
ircd::db: Inline trivial operator wrappers.
2020-09-21 20:50:58 -07:00
Jason Volk
8155c38f7f
ircd::db: Compression hierarchy; increase compaction readahead; table options.
2020-09-21 20:50:57 -07:00
Jason Volk
5ac0457d55
configure: Support libzstd related in build.
2020-09-21 16:22:23 -07:00
Jason Volk
ca9314ce49
ircd::db: Add newer checksum interposition.
2020-09-21 16:22:23 -07:00
Jason Volk
312625bc08
ircd::db: Use ZSTD compression by default.
2020-09-20 12:50:17 -07:00
Jason Volk
e2ac5c6fc7
ircd::db: Use conf item for default compression string in descriptor.
2020-09-20 12:50:17 -07:00
Jason Volk
358008e8e7
ircd::db: Improve compression options; bottommost LZ4HC.
2020-09-19 07:47:21 -07:00
Jason Volk
305aa691e7
ircd::json: Improve return count; add condition for noisy dwarning.
2020-09-18 22:09:56 -07:00
Jason Volk
6edb1d4eec
ircd::db: Skip infolog under condition with mostly zero values.
2020-09-18 22:09:53 -07:00
Jason Volk
f5931e8fc7
ircd::server: Fix repeated log message; additional assertions.
2020-09-18 22:01:16 -07:00
Jason Volk
60382c2371
ircd::db: Improve universal compaction descent; flush on shutdown.
2020-09-18 18:47:15 -07:00
Jason Volk
5762513c73
ircd::db: Use warning level for certain compaction/flush reasons.
2020-09-18 18:47:15 -07:00
Jason Volk
229efaf486
ircd::db: Obtain file creation time if available in metadata.
2020-09-18 18:47:15 -07:00
Jason Volk
d229f32a46
ircd::json: Fix double indirect call.
2020-09-18 18:47:15 -07:00
Jason Volk
70860ecaa2
ircd::db: Add parallel read suite to interface.
2020-09-17 10:49:41 -07:00
Jason Volk
ac64faee5f
ircd::db: Minor reorder column definitions.
2020-09-17 10:49:41 -07:00
Jason Volk
66368d1cdc
ircd::db: Add typedefs for parallel query argument templates.
2020-09-17 10:49:41 -07:00
Jason Volk
bd3d34adb2
ircd::db: Additional compaction log related.
2020-09-17 10:49:41 -07:00
Jason Volk
6fed4f53d7
ircd::db: Reorg options by compaction type.
2020-09-16 06:55:14 -07:00
Jason Volk
f8841a7f60
ircd::server: Check for empty buffer and bail before recv()'ing on it.
2020-09-16 01:42:27 -07:00
Jason Volk
ebef47f32d
ircd::db: Improve logged flush and compaction information.
2020-09-16 01:03:42 -07:00
Jason Volk
4ecb2d0d5f
ircd: Add distinct maintenance mode; chain write-avoid/read-only and net listen modes.
2020-09-15 22:16:11 -07:00
Jason Volk
772022a74e
ircd::ed25519: Add create option to ctor; remove reference to global.
2020-09-15 18:46:28 -07:00
Jason Volk
1668bee2e5
ircd::json: Logical revert of a4766e583; reduces to minor cleanup/simplify.
2020-09-15 16:53:45 -07:00
Jason Volk
a2df9a9cdc
ircd::db: Add conf item to toggle WAL in write opts.
2020-09-15 04:33:28 -07:00
Jason Volk
3cf21998ae
ircd::db: Partial revert of 614f9cb31
due to unaligned throughput complications.
2020-09-15 04:33:28 -07:00
Jason Volk
9e7991900c
ircd::db::database::env: Fix size assumption for this->buffer.
2020-09-15 04:33:28 -07:00
Jason Volk
0a7b8f03c9
irdb::db::database::env: Fix deprecated unbounded buffer offset constructions.
2020-09-15 04:33:28 -07:00
Jason Volk
8bdedb569c
ircd::db: Add preliminary custom rate limiter drop-in.
2020-09-15 04:33:28 -07:00
Jason Volk
f7400edc75
ircd::db: Tweak write-side column buffer and level0 scale; concurrent flush.
2020-09-15 04:33:28 -07:00
Jason Volk
439fb28854
ircd::fs: Relax assertion on buffer length at alignment.
2020-09-15 04:33:28 -07:00
Jason Volk
00657475d1
ircd::db: Relax assertions from concurrent flush.
...
ircd::db: Relax assertion when reflecting IO_TOTAL.
2020-09-15 04:33:28 -07:00
Jason Volk
121de5a6dc
ircd::db: Fix comment; tweak universal compaction max width.
2020-09-14 14:16:31 -07:00
Jason Volk
a02bd474d7
Fix EXTRA_CXXFLAGS append order regression.
2020-09-13 14:32:47 -07:00
Jason Volk
a4766e5834
ircd::json: Remove redundant type determination from value constructions.
2020-09-13 10:29:26 -07:00
Jason Volk
e39182be25
ircd::fs: Add prefetch convenience to interface.
2020-09-13 08:42:34 -07:00
Jason Volk
66f99f70c2
ircd::fs: Fix ifdef wrapping for symbol.
2020-09-13 08:42:34 -07:00
Jason Volk
ed01ed05dc
ircd::db: Variable per-column write buffer derived from block size.
2020-09-12 22:31:06 -07:00
Jason Volk
614f9cb312
ircd::db: Enable asynchronous flush and compaction.
2020-09-12 07:03:21 -07:00
Jason Volk
afe0b96249
ircd::db: Support universal compaction by default; various write tweaks.
2020-09-12 07:03:21 -07:00
Jason Volk
cbeedf2cf7
ircd::ed25519: Add non-throwing failure state for instances; bool operators.
2020-09-10 23:50:47 -07:00
Jason Volk
da56bb1a9d
ircd::db: Allow more L0 files before trigger for larger combines.
2020-09-10 23:50:47 -07:00
Jason Volk
407202f85f
ircd::util: Improvements to timer tool; fix accumulator semantics; comments.
2020-09-10 23:50:47 -07:00
Jason Volk
f51ffb1530
ircd::db: Tweak block restart toward more conservative interval.
2020-09-10 12:45:44 -07:00
Jason Volk
84564aee5f
ircd::simd: Add a streaming transform boilerplate template for the common pattern.
...
ircd::simd: Add a streaming consumer boilerplate template for the common pattern.
ircd::json: Simplify w/ stream templates; update counter lane convention.
2020-09-09 04:47:27 -07:00
Jason Volk
98dd705de9
ircd::ctx: Default to DISPATCH method to wrap context switch spawn; simplify stack.
2020-09-08 22:43:30 -07:00
Jason Volk
a68702249d
ircd::db: Add interface to count cache entries.
...
modules/console: Add count column to db cache cmd.
2020-09-08 22:27:06 -07:00
Jason Volk
023e1341a1
ircd::json: Only call _post_append() under nominal unwind.
2020-09-07 17:01:45 -07:00
Jason Volk
7eaf60c308
ircd::fs: Add interface to madvise on mapped file.
2020-09-07 17:01:45 -07:00
Jason Volk
97248b2f44
ircd::simd: Refactor typedefs to not require external header.
2020-09-06 00:11:17 -07:00
Jason Volk
82308ee4b3
ircd::simd: Consolidate sum_ templates into lateral template template.
2020-09-05 14:34:48 -07:00
Jason Volk
6577365d40
ircd::log: Remove unnecessary flush.
2020-09-04 21:09:49 -07:00
Jason Volk
ba564d6bdb
ircd: Tweak continue handler format string.
2020-09-04 21:09:49 -07:00
Jason Volk
c92127a8cd
ircd::utf16: Fix masking of unused lane result values.
2020-09-04 00:16:18 -07:00
Jason Volk
dd610a0d6b
ircd::json: Add faster backward branch without bitcounting in inner loop.
2020-09-03 21:14:43 -07:00
Jason Volk
68ffcea1fc
ircd::json: Additional document comments; minor cleanup.
2020-09-03 21:14:43 -07:00
Jason Volk
4a5d6066fe
ircd::utf: Simplify interfaces with weak specializations for vector widths; template inline.
2020-09-03 21:14:43 -07:00
Jason Volk
91485016e2
ircd::b64: Simplify error vector reduction; fix type to match specialization.
2020-09-02 00:14:14 -07:00
Jason Volk
f9e1b90b51
ircd::json: Add simd string component.
2020-08-31 16:21:19 -07:00
Jason Volk
16721a10be
ircd::b64: Use sum tool; fix explicit instantiation linkage issue on GCC.
2020-08-31 12:11:14 -07:00
Jason Volk
d64d038911
ircd::spirit: Adjust generator_state linkage for clang/gcc.
2020-08-31 12:09:31 -07:00
Jason Volk
8505635716
ircd::spirit: Use per-unit thread-local internal generator_state ptr.
2020-08-30 05:43:12 -07:00
Jason Volk
5104e284cb
ircd::spirit: Split into headers; move into directory; reorg definitions.
2020-08-29 17:38:54 -07:00
Jason Volk
e6e5b14b93
ircd::http: Assert enough buffer for valid chunk size value.
2020-08-28 05:18:57 -07:00
Jason Volk
8e7002a4b6
ircd::spirit: Eliminate buffer construction frequent allocation.
2020-08-28 05:18:57 -07:00
Jason Volk
1422b68666
ircd::spirit: Fix buffering strategy; fix align directive.
2020-08-28 05:18:57 -07:00
Jason Volk
a7b6001d49
ircd: Ⓜ️ :db: Additional debug for txn contents.
2020-08-28 05:18:57 -07:00
Jason Volk
64e5df1d86
ircd::fs: Use fd::map object for fincore() impl.
2020-08-28 05:18:57 -07:00
Jason Volk
f6475a2906
ircd::fs: Add interface to mmap fd.
2020-08-28 05:18:57 -07:00
Jason Volk
f5dd9debb6
ircd: Move magick support to core lib. ( #109 )
2020-08-24 03:04:05 -07:00
Jason Volk
9925fc919d
ircd: Adjust object order based on running theory of dependencies.
2020-08-24 03:03:59 -07:00
Jason Volk
2381f07d2f
ircd::ios: Assume direct dispatch; use epoch continuation closure.
2020-08-23 04:20:48 -07:00
Jason Volk
f16eb0b558
ircd::db: Use caller provided string buffer for debug.
2020-08-23 03:49:20 -07:00
Jason Volk
77f858d27d
ircd::simd: Use explicit instantiations w/ optimal conversions for lzcnt/tzcnt generation.
2020-08-23 02:32:54 -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
f8b9652555
ircd::mods: Call module fini after child reference counts incremented.
2020-08-23 01:56:37 -07:00
Jason Volk
4292365abf
ircd::log: Simplify epoch column value; fixed width.
2020-08-23 01:56:37 -07:00
Jason Volk
07830f1413
ircd::ctx: Integrate slice cycle counters with ios.
2020-08-21 10:43:04 -07:00
Jason Volk
a864cc73b2
ircd::ios: Fix object initialization order.
2020-08-21 10:43:04 -07:00
Jason Volk
7c583061f3
ircd::b64: Simplify padded length conditionals.
2020-08-21 10:43:04 -07:00
Jason Volk
3e2aff3a71
ircd::b64: Simplify trailing error negation and propagaton.
2020-08-21 06:21:49 -07:00
Jason Volk
d4a7acb8ea
ircd::b64: Simplify stream loop control.
2020-08-21 06:21:49 -07:00
Jason Volk
385ade0154
ircd::b64: Fixes for size computing constexprs.
2020-08-21 06:21:49 -07:00
Jason Volk
99acb1bc15
ircd::json: Suppress uninitialized warning from recursive grammar reference.
2020-08-21 06:20:26 -07:00
Jason Volk
246ae05881
ircd::rfc1459: Reorg grammar instantiations; visibility; initialization issues.
2020-08-21 06:20:26 -07:00
Jason Volk
eb43826d99
ircd::rfc3986: Consolidate visibility attributions; additional comments.
2020-08-21 06:20:26 -07:00
Jason Volk
c8deea2e8b
ircd::b64: Use standard alignas().
2020-08-12 02:55:35 -07:00
Jason Volk
ff19991163
ircd::b64: Optimize transforms; padding.
2020-08-12 01:52:16 -07:00
Jason Volk
6bca16c277
ircd::b64: Add decoding error condition logic.
2020-08-11 19:38:16 -07:00
Jason Volk
0a542e6424
ircd::b64: Improve loop control and range constraints.
2020-08-11 16:15:53 -07:00
Jason Volk
c941e13ed0
ircd::b64: Adjust for types most amenable to vectorizing lookup phase.
2020-08-11 15:50:52 -07:00
Jason Volk
3cf8b949bf
ircd::b64: Use typedef for static dictionaries.
2020-08-11 15:50:52 -07:00
Jason Volk
f3f441ac19
ircd::b64: Add parallel SIMD base64 decoder.
2020-08-11 15:50:52 -07:00
Jason Volk
d51082ef17
ircd::db: Handle SST file query errors per column.
2020-08-10 11:32:24 -07:00
Jason Volk
44bd60ea08
ircd::b64: Add encoding diction parameter; remove converters; reorg interface.
2020-08-10 06:19:48 -07:00
Jason Volk
7ff89fbd17
ircd: Split base64 and base58 into separate namespaces.
2020-08-10 04:56:28 -07:00
Jason Volk
3a887b4ca6
ircd::base: Optimize b64 table type; optimal lookup stride.
2020-08-09 04:36:47 -07:00
Jason Volk
abc41ca666
ircd::base: Indicate noexcept on apropos out-of-line declarations.
2020-08-09 04:36:47 -07:00
Jason Volk
1baa590d9c
ircd::fpe: Add scope_round tool.
...
ircd::fpe: Inline exception flag setter.
ircd::fpe: Add fesetround() wrapper.
2020-08-09 02:39:31 -07:00
Jason Volk
4a2adc4123
ircd::base: Remove allocated string convenience overloads; simplify interface.
2020-08-09 02:39:31 -07:00
Jason Volk
8a3f060387
ircd::base: Implement faster base64 encoder; various reorg; cleanup.
2020-08-09 01:42:15 -07:00
Jason Volk
4376f4e353
ircd::json: Eliminate explicit load/store intrinsics; cleanup typedefs.
2020-08-07 02:14:27 -07:00
Jason Volk
52d590b832
ircd::base: Simplify internal namespace related.
2020-08-06 20:21:45 -07:00
Jason Volk
59dd43917b
ircd::db: Add note for delta encoding option; minor cleanup [ci skip]
2020-08-05 23:08:51 -07:00
Jason Volk
65296be413
ircd::db::database::sst: Add checksum data to info collection.
2020-08-05 22:33:33 -07:00
Jason Volk
439eafa59f
ircd::db: Use default auto value for ttl setting.
2020-08-05 22:09:14 -07:00
Jason Volk
72c46fa9f5
ircd::db::database::sst: Simplify assignment for inherited.
2020-08-05 21:32:01 -07:00
Jason Volk
d5e59b95b9
ircd::db: Bump block table format version.
2020-08-05 20:34:32 -07:00
Jason Volk
32baa1a6bc
ircd: Indicate noexcept for lex_castable template suite.
2020-08-05 19:12:22 -07:00
Jason Volk
9f09eb6581
ircd::json::value: Inline trivial indirections.
2020-08-05 17:27:54 -07:00
Jason Volk
df619e6010
ircd::db::column: Indicate noexcept for various out-of-lines.
2020-08-04 23:30:19 -07:00
Jason Volk
e3cf942df3
ircd::net::dns::resolver: Slight decrease for default retries conf.
2020-08-02 06:45:46 -07:00
Jason Volk
1a433f7274
ircd::ctx: Eliminate branch in prof::mark() stack.
2020-08-02 06:42:04 -07:00
Jason Volk
ea039f29b5
ircd::ctx: Inline prof::mark() into callsites; remove static w/ indirect jump.
2020-08-02 06:22:33 -07:00
Jason Volk
59197ee2d5
ircd::ios: Add epoch history in circular buffer for profiling w/ console cmd.
2020-08-02 05:45:35 -07:00
Jason Volk
e36354cff0
ircd::stringops: Minor cleanup.
2020-08-02 01:30:49 -07:00
Jason Volk
5f28136e2d
ircd::stringops: Simplify indexof().
2020-08-02 00:37:40 -07:00
Jason Volk
b3c4583dd0
ircd::cbor: Remove cruft; collapse directory for now.
2020-07-31 21:34:45 -07:00
Jason Volk
84767a1859
ircd::mods: Various fixes for proper recursive unload ordering.
2020-07-31 20:25:16 -07:00
Jason Volk
2e35ec3d77
Revert _SC_CLK_TCK removal for convenience and exotic systems.
...
This reverts commit 1c1ceeacba
.
2020-07-31 19:17:06 -07:00
Jason Volk
2f6f2af06f
Reserve EXTRA_* flag sets for user.
...
configure: Move unit configuration section above application settings.
configure: -fasm-blocks not yet useful without GCC parity.
2020-07-30 06:38:51 -07:00
Jason Volk
2e1fc0c234
ircd::db: Inline some trivial default comparators.
2020-07-28 01:22:02 -07:00
Jason Volk
f2c182b403
ircd::db: Set max_open_files=-1 when required for secondary mode.
...
ircd:Ⓜ️ :dbs: Condition option from being set in slave/secondary mode.
ircd::db: Skip snapshot creation in slave/secondary mode (required).
ircd::db: Slave implies read-only.
2020-07-28 00:38:46 -07:00
Jason Volk
41db97fec0
ircd::db: Make default comparators noexcept.
2020-07-28 00:38:46 -07:00
Jason Volk
a0ae5162eb
ircd::db: Add preliminary enum case for future use.
2020-07-25 09:10:49 -07:00
Jason Volk
ae2bc801f9
ircd::json: Optimize alternative order.
2020-07-24 22:37:30 -07:00
Jason Volk
285cdf6afc
ircd::db: Update include for checksum related interposition.
2020-07-24 18:59:41 -07:00
Jason Volk
a46382b285
ircd::db::database::allocator: Fix assertion ifdef condition.
2020-07-23 13:24:43 -07:00
Jason Volk
1cf03d8608
ircd::json: Simplify trailing loop related.
2020-07-22 05:00:36 -07:00
Jason Volk
92324197b3
ircd::json: Remove unnecessary reassignment; restricted reference.
2020-07-22 03:16:14 -07:00
Jason Volk
1c1ceeacba
ircd::info: Remove cruft.
2020-07-22 02:00:05 -07:00
Jason Volk
898f7980f6
ircd::json: Optimize string character grammar.
2020-07-21 00:38:08 -07:00
Jason Volk
bf17eb196f
ircd::log: Remove override condition for * facility to stdout.
2020-07-20 22:31:41 -07:00
Jason Volk
479c3f62ef
ircd::json: Minor reorg.
2020-07-17 18:59:51 -07:00
Jason Volk
3a70943b94
ircd::simd: Split bit manipulations suites to headers; renames.
2020-07-17 16:46:43 -07:00
Jason Volk
ba5a97821c
ircd::json: Reduce string serialized/stringify branch complex and improve layout.
2020-07-15 21:22:54 -07:00
Jason Volk
1fa358d9a8
ircd::utf: Add glue for missing GCC vector scaling.
2020-07-15 13:39:59 -07:00
Jason Volk
566029bdb0
ircd::utf16: Remove cruft.
2020-07-14 18:20:08 -07:00
Jason Volk
4184309ff2
ircd::info: Add avx512f indicator; remove cruft; tweak info dump string.
2020-07-12 11:17:41 -07:00
Jason Volk
52013c1ee0
ircd::ctx::list: Reduce out-of-line accessor surface.
2020-07-11 18:51:19 -07:00
Jason Volk
a3dc7331cc
ircd::ctx::list: Remove from hot section.
2020-07-11 18:13:13 -07:00
Jason Volk
6ec9b2a783
ircd: Specify explicit noexcept for gcc-10 issue.
2020-07-11 17:57:33 -07:00
Jason Volk
2b930eb4b2
ircd::json: Disable profiling counters by default.
2020-07-11 17:57:33 -07:00
Jason Volk
ef778b07bf
ircd::info: Detect sse4a; guest.
2020-07-11 13:49:08 -07:00
Jason Volk
85b550597c
ircd::info: Remove unnecessary indication.
2020-07-10 23:58:07 -07:00
Jason Volk
d371fba034
ircd::db: Use reference to prevent string copy.
...
ircd:Ⓜ️ Fix reference/copy related warnings in clang-10.
2020-07-10 23:58:07 -07:00
Jason Volk
31bd80a6d1
Consolidate application of -flax-vector-conversions.
2020-07-10 20:12:33 -07:00
Jason Volk
72a61a7426
ircd::utf: Adjust vector types/syntaxes for GCC.
...
ircd::json: Adjust vector types for GCC.
2020-07-10 02:41:02 -07:00
Jason Volk
2f9aa15fc0
ircd::utf: Eliminate recasting for shift.
2020-07-09 19:45:42 -07:00
Jason Volk
27fcfb3175
ircd::db: Align column cache allocations to block size.
2020-07-08 16:27:27 -07:00
Jason Volk
59ce393581
ircd::db::allocator: Update alignment defaults.
2020-07-08 16:27:27 -07:00
Jason Volk
f8e32477f8
ircd::json: Fix incorrect masking from surrogate pair.
2020-07-06 17:31:04 -07:00
Jason Volk
b80b06135b
ircd::json: Minor reorg.
2020-07-06 17:31:04 -07:00
Jason Volk
b32d2f07f5
Relax vector conversions in translation units; enforce in headers.
2020-07-06 17:31:04 -07:00
Jason Volk
a021b496cd
ircd::json: Use condition around __builtin_assume().
2020-07-05 05:47:23 -07:00
Jason Volk
900f820a8c
ircd::json: Use unicode surrogate for null escape stringify.
2020-07-05 03:54:03 -07:00
Jason Volk
687ce6efb2
ircd::json: Fix iteration increments; counting.
2020-07-05 03:54:03 -07:00
Jason Volk
60a8d009bb
ircd::utf16: Add surrogate pair decode to aligned_next routine.
2020-07-05 01:35:36 -07:00
Jason Volk
255b23ed7d
ircd::json: Eliminate maskmove; use matching temporal store.
2020-07-03 20:11:02 -07:00
Jason Volk
6a93a121f3
ircd::json: Optimize serialized(value) string case.
2020-07-03 18:19:13 -07:00
Jason Volk
0e6a6ea0b1
ircd::json: Replace char generator w/ new vectorized string streaming. ( fixes #158 ) ( fixes #159 )
2020-07-03 16:35:28 -07:00
Jason Volk
76a16469fb
ircd::utf: Internal template for utf8::encode() w/ additional lane choices for interface.
2020-07-03 14:17:36 -07:00
Jason Volk
d6d4c0b80a
ircd::utf16: Add aligned escaped hex surrogate decoder.
2020-07-03 13:19:57 -07:00
Jason Volk
c9c61124e7
ircd::utf8: Add multiple lane overloads for length(); internal template; minor comments.
2020-07-02 16:38:59 -07:00
Jason Volk
e3e6bb8dbf
ircd::utf16: Additional surrogate scan tools; minor reorg interface.
2020-07-01 07:03:11 -07:00
Jason Volk
75ac474e05
ircd::utf16: Add escaped surrogate scan tool.
...
ircd::utf16: Add surrogate mask routine; minor interface rename.
2020-06-28 19:14:44 -07:00
Jason Volk
abea8ad5b8
ircd::simd: Use value arguments for optimal calling convention.
2020-06-28 18:22:18 -07:00
Jason Volk
7254d3c945
ircd::simd: Fix incorrect number of lanes printed for vector type.
2020-06-28 15:07:35 -07:00
Jason Volk
bbaeb09c2d
ircd::utf: Add unpacked decode; de-template for linkage; minor reorg.
2020-06-27 20:03:59 -07:00
Jason Volk
b94c5d370f
ircd::utf: Move definitions out-of-line for now.
2020-06-27 18:10:36 -07:00
Jason Volk
ac21ebdc90
ircd::simd: Expose SIMD utils to standard include group; split header into dir.
2020-06-27 16:31:57 -07:00
Jason Volk
ad8f3bd878
ircd::icu: Add encoding transform to suite; minor rename.
2020-06-25 18:36:18 -07:00
Jason Volk
1ad2a1546a
ircd::simd: Simplify string/debug interface.
2020-06-25 12:54:38 -07:00
Jason Volk
001bd12287
ircd::simd: Add lane number constant tables.
2020-06-24 15:16:47 -07:00
Jason Volk
3490eb89e8
ircd::json: Consistent quoted inputs to the printer. (related ea1c0dcae7
)
2020-06-24 11:45:15 -07:00
Jason Volk
526271e8cd
ircd::simd: Add preliminary debug print utils.
2020-06-24 11:00:11 -07:00
Jason Volk
d456a42cdd
ircd::json: Add stats items counting calls and cycles on input and output.
2020-06-24 11:00:11 -07:00
Jason Volk
c99ae124f4
ircd::json: Relax attributes on grammar templates.
2020-06-24 09:27:23 -07:00
Jason Volk
ff1d2c938c
ircd::json: Simplify printer invocation template overloading.
2020-06-24 08:57:50 -07:00
Jason Volk
57e70512d0
ircd::json: Minor cleanup; simplify conditionals.
2020-06-23 00:55:16 -07:00
Jason Volk
ea1c0dcae7
ircd::json: Pass all string input through the grammar.
2020-06-23 00:54:48 -07:00
Jason Volk
613702bc13
ircd::allocator::je: Fix ifdef for grabbing ABI information.
2020-06-20 22:01:57 -07:00
Jason Volk
e26b046940
ircd::json: Optimize character dfa w/ de-aliased output ref.
2020-06-20 05:41:14 -07:00
Jason Volk
da1f3e0d1c
ircd: Remove legacy locale header / unit.
2020-06-20 05:41:14 -07:00
Jason Volk
71eba6bf45
ircd::icu: Use better namespace name; export to ircd.
2020-06-20 05:41:14 -07:00
Jason Volk
1c9ee622e5
ircd::db: Provide database stats instance for default column cache requirement.
2020-06-20 05:41:14 -07:00
Jason Volk
63a7554c4a
ircd::json: Ensure output is sorted on object::member array stringify; hoist tls buffers.
2020-06-20 05:41:14 -07:00
Jason Volk
28e3e6b3fd
ircd::icu: Add u8/16 util suite; add char32_t name information interface.
...
ircd::icu: Add name to character inversion.
ircd::icu: Add category and block queries.
ircd::icu: Add property reflections.
ircd::icu: Add tolower()/toupper().
ircd::icu: Add u8 transform w/ diagnostic.
2020-06-19 08:29:31 -07:00
Jason Volk
c41c632e94
ircd::db: Remove trailing newline in ABI version string.
2020-06-19 03:04:55 -07:00
Jason Volk
daa49dde51
ircd: Add icu support if available.
2020-06-19 03:04:55 -07:00
Jason Volk
6bcd19325a
ircd::resource: Add derror before terminating client; soften dc type.
2020-06-18 20:41:09 -07:00
Jason Volk
ba4c98d7e8
ircd::db: Minor remove cruft. (related 942e8330e6
)
...
ircd::ios: Minor cleanup.
2020-06-18 20:07:40 -07:00
Jason Volk
22f4fd5046
ircd::db: Add fwd decl and accoutrements for rocksdb::PinnableSlice.
2020-06-18 20:07:40 -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
b08e161e27
ircd::fpe: Inline errors_handle; minor include reorder.
2020-06-18 01:23:01 -07:00
Jason Volk
59829f1a59
ircd::json: Relax number_frac limit more digits.
2020-06-17 23:22:39 -07:00
Jason Volk
4371d803a4
ircd: Move fpe out of util.
2020-06-17 23:01:23 -07:00
Jason Volk
43c6727492
ircd::json: Replace number rule w/ non-casting grammar.
2020-06-17 22:08:20 -07:00
Jason Volk
7e3c1bf591
ircd::db: Increment per-column stats for items from 54996d2f29
.
2020-06-17 22:08:20 -07:00
Jason Volk
c8e11b7ffc
ircd::db: Disable stats instance for unused default column.
2020-06-17 20:57:29 -07:00
Jason Volk
4b20747e06
ircd::stats: Add buffer-based stringifier to interface; simplify.
2020-06-17 20:28:05 -07:00
Jason Volk
338cec879a
ircd::db::database::stats: Incorporate column into item name scheme.
2020-06-17 19:24:02 -07:00
Jason Volk
54996d2f29
ircd::db: Additional custom stats tickers for PinnableSlice copy and referencing.
2020-06-17 19:24:00 -07:00
Jason Volk
c0990e0c0b
ircd::db::database::stats: Add ircd::stats::item's for rocksdb tickers. ( #31 )
2020-06-17 19:20:47 -07:00
Jason Volk
c0d2fe20bb
ircd::stats: Refactor subsystem template hierarchy and approach. ( #31 )
2020-06-17 18:12:19 -07:00
Jason Volk
e2654ddaed
ircd::db: Add feature define for direct-io multiget; various cleanup.
2020-06-16 07:27:50 -07:00
Jason Volk
597052e5c0
ircd::db: Simplify internal _read() interface to single Get().
2020-06-15 21:55:23 -07:00
Jason Volk
2cf9dacb70
ircd::db: Remove obsoleted DeleteScheduler interpositions.
2020-06-15 04:08:48 -07:00
Jason Volk
075ef11386
ircd::db::database::env: Add errorlog and assertion on MultiRead() result.
2020-06-14 22:24:00 -07:00
Jason Volk
942e8330e6
ircd::db: Indicate DEBUG_PREFETCH is also available for verbose debuglog.
2020-06-14 22:05:15 -07:00
Jason Volk
59bb3a5886
ircd::db: Interpose rocksdb::ThreadLocalPtr for ircd::ctx.
2020-06-14 22:05:15 -07:00