Jason Volk
|
07ec766ff9
|
ircd::ios: Consolidate dispatch/post/defer interfaces; minor fixes.
|
2020-12-20 06:02:50 -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
|
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
|
a10429c15f
|
ircd: Improve terminate interface; simplify impl.
|
2020-12-13 10:45:34 -08:00 |
|
Jason Volk
|
ddfac32b85
|
ircd::ios: Elide std::function for hot descriptor calls.
|
2020-12-11 22:50:57 -08:00 |
|
Jason Volk
|
bc3ad3f89c
|
ircd::fs::dev: Eliminate the static map; refactor interface; add console cmd.
|
2020-06-08 16:13:00 -07:00 |
|
Jason Volk
|
6e5da0dee6
|
ircd::fs::aio: Add a default max_events fallback; assert non-zero.
|
2020-06-07 03:40:38 -07:00 |
|
Jason Volk
|
839998e474
|
ircd::fs::aio: Initialize context with parameters sampled from devices.
ircd::fs: Simplify init infolog related.
|
2020-06-07 01:51:19 -07:00 |
|
Jason Volk
|
ffbfe40f0f
|
ircd::fs::info: Attempt to get sysconf for AIO_MAX w/o exception.
ircd::fs::aio: Improve default max events values for now.
|
2020-06-05 16:32:57 -07:00 |
|
Jason Volk
|
cdd1fc2a9c
|
ircd::fs::aio: Relax assertion.
|
2020-05-30 17:36:47 -07:00 |
|
Jason Volk
|
23b0674051
|
ircd::fs::aio: Fix request object semantics and immobility guarantees.
|
2020-05-30 16:50:38 -07:00 |
|
Jason Volk
|
aaa5e785aa
|
ircd::fs: Implement synchronous parallel-read interface.
|
2020-05-07 00:28:27 -07:00 |
|
Jason Volk
|
c683365341
|
ircd::fs::aio: No default zero initialization for aio::request used in array.
|
2020-05-06 19:13:14 -07:00 |
|
Jason Volk
|
fd1db1b208
|
ircd::fs::aio: Pointer to dock rather than instance per request; split request::operator().
|
2020-05-06 15:46:54 -07:00 |
|
Jason Volk
|
6d77e99a03
|
ircd::fs::aio: Minor reorder request arguments; missing constness; consistent return values.
|
2020-05-06 14:04:14 -07:00 |
|
Jason Volk
|
26b36d4740
|
ircd::fs::aio: Remove blocking debug; deprecated by io_uring.
|
2020-04-18 20:17:37 -07:00 |
|
Jason Volk
|
472ce01b50
|
ircd::fs: Reorg support section and indicators.
|
2020-03-20 10:56:55 -07:00 |
|
Jason Volk
|
6679b66806
|
ircd::prof: Move ctx::syscall_usage_warning into prof.
|
2020-03-06 15:43:24 -08:00 |
|
Jason Volk
|
d3809d43e5
|
Reorganize Makefiles.
|
2019-09-27 19:35:26 -07:00 |
|
Jason Volk
|
efadd20ce8
|
Revert "ircd::fs::aio: Use defer to post the chaser." [skip ci]
This reverts commit 726f131cc2 .
Revert "construct: Set asio::io_context concurrency hint to 1."
This reverts commit 0d1b3de7c0 .
|
2019-09-15 19:36:39 -07:00 |
|
Jason Volk
|
407ee42343
|
ircd::fs::aio: Set continuation=true in sigfd ios descriptor.
|
2019-09-13 17:11:13 -07:00 |
|
Jason Volk
|
6ccbede478
|
ircd::fs::aio: Use ctx::dock for waiter; minor reorg.
|
2019-08-19 20:24:05 -07:00 |
|
Jason Volk
|
25f5f28102
|
ircd::fs::aio: Improve conf item documentation.
|
2019-08-19 20:11:59 -07:00 |
|
Jason Volk
|
2532f7f5e2
|
ircd::fs::aio: Add submit_coalesce conf item.
|
2019-08-16 02:19:49 -07:00 |
|
Jason Volk
|
125f53872c
|
ircd::fs: Preliminary io_uring infrastructure plumbing.
|
2019-08-11 01:39:30 -07:00 |
|
Jason Volk
|
588b0aa9bc
|
ircd::fs::aio: Fix bitrot assertion; simplify aio related.
|
2019-08-10 23:22:28 -07:00 |
|
Jason Volk
|
f549fb1f72
|
ircd::fs: Fix support version detections.
|
2019-08-06 15:49:24 -07:00 |
|
Jason Volk
|
8b9822e4fb
|
Fix various instances of throwing into noexcept.
|
2019-08-05 16:20:55 -07:00 |
|
Jason Volk
|
cf3b1218c4
|
ircd: Misc fixes for clang.
|
2019-06-23 16:22:06 -06:00 |
|
Jason Volk
|
3ccb7c1faa
|
ircd: Belay narrowing conversions.
|
2019-06-22 17:36:37 -06:00 |
|
Jason Volk
|
e409a45f15
|
ircd::fs::aio: Remove stale TODO.
|
2019-06-08 02:48:35 -07:00 |
|
Jason Volk
|
c292ec46f2
|
ircd::fs: Add runtime selection of pwritev(2) and RWF_ features; minor reorg.
|
2019-06-05 23:25:48 -07:00 |
|
Jason Volk
|
eb73595c50
|
ircd: Apply uniform info::versions for all dependency version identification.
|
2019-05-31 16:15:01 -07:00 |
|
Jason Volk
|
134bcc1bfb
|
ircd::fs: Add write_opts for RWF_WRITE_LIFE_* support.
|
2019-05-05 17:48:02 -07:00 |
|
Jason Volk
|
a931a7f631
|
ircd::fs::aio: Add conditional define for io_submit() debug timers.
|
2019-04-29 17:48:06 -07:00 |
|
Jason Volk
|
04020da7e4
|
ircd::fs::aio: Add debug mechanism to warn read will block io_submit(2).
|
2019-04-29 17:38:19 -07:00 |
|
Jason Volk
|
30b59f4736
|
ircd::prof: Reorg; deinline various; add comments.
|
2019-04-25 21:10:45 -07:00 |
|
Jason Volk
|
306752b2a5
|
ircd::fs::aio: Remove erroneous #define.
|
2019-04-22 16:59:03 -07:00 |
|
Jason Volk
|
a61d04a9c2
|
ircd::fs: Allow ircd.fs.aio.max_submit=0 to indicate max possible.
|
2019-04-22 15:40:34 -07:00 |
|
Jason Volk
|
d6374466f3
|
ircd::fs::aio: Test for blocking flag rather than option if available.
|
2019-04-22 09:45:14 -07:00 |
|
Jason Volk
|
c04708aca4
|
ircd::fs::aio: Minor tweak call pattern for wait(request).
|
2019-04-22 09:29:09 -07:00 |
|
Jason Volk
|
1137f8a29b
|
ircd::fs::aio: Fix waiting on cancels; various fixes.
|
2019-04-21 04:15:10 -07:00 |
|
Jason Volk
|
bbc5d9ee5b
|
ircd::fs::aio: Improve error assumptions / reporting around io_submit().
|
2019-04-20 22:28:15 -07:00 |
|
Jason Volk
|
900fab1e79
|
ircd::fs: Propagate EAGAIN without exception for !opts.blocking operations.
|
2019-04-20 19:29:07 -07:00 |
|
Jason Volk
|
4c95765e07
|
ircd::fs::aio: Add assertions for null value aio_data.
|
2019-04-18 18:33:58 -07:00 |
|
Jason Volk
|
726f131cc2
|
ircd::fs::aio: Use defer to post the chaser.
|
2019-04-12 17:32:53 -07:00 |
|
Jason Volk
|
0b51a10a44
|
ircd::fs::aio: Count io_submit() 'stalls' in stats.
|
2019-04-10 20:18:51 -07:00 |
|
Jason Volk
|
ba46e8c005
|
ircd::fs::aio: Move for_each_completed() to central interface; add additional utils.
|
2019-04-10 20:18:51 -07:00 |
|