0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-12-29 08:54:02 +01:00
Commit graph

147 commits

Author SHA1 Message Date
Jason Volk
6dc50292e8 ircd::fs: Simplify these ifdef conditions. 2019-03-27 19:07:11 -07:00
Jason Volk
1ce9ec3f8e ircd::fs::error: Remove fs::error from the ircd::exception hierarchy. 2019-03-16 18:12:38 -07:00
Jason Volk
e752070d06 ircd::fs: Handle zero length buffers in the iov. 2019-03-16 13:49:04 -07:00
Jason Volk
89b258c5a7 ircd::fs: Improve fs::prefetch(). 2019-03-15 21:36:26 -07:00
Jason Volk
20716634a8 ircd::fs: Improve condition for RWF_APPEND/pwritev2() -1 offset value. 2019-03-15 18:45:39 -07:00
Jason Volk
4efb3a26fd ircd::fs: Reorg general RWF_ indicators out to fs:: from aio::. 2019-03-15 18:45:32 -07:00
Jason Volk
353fc35df4 ircd::fs: Don't set -1 offset on systems without RWF_APPEND. 2019-03-15 18:34:35 -07:00
Jason Volk
2a0720c1a0 ircd::fs: Use flags based on system availability. 2019-03-15 16:19:05 -07:00
Jason Volk
fbe06f5724 ircd::fs: Rotate more internal bufs in case of reentrance. 2019-03-15 16:19:05 -07:00
Jason Volk
87144cef77 ircd::fs: Support various RWF flags for operations; also preadv2(). 2019-03-14 12:45:00 -07:00
Jason Volk
56092db18c ircd::fs: Move the reqprio() normalizer from fs::aio:: to fs::. 2019-03-13 19:39:20 -07:00
Jason Volk
02435c3672 ircd::fs: Support pwritev2(2). 2019-03-13 19:38:50 -07:00
Jason Volk
1117947a22 ircd::fs::aio: Add support test for RWF_NOWAIT and RWF_APPEND. 2019-03-13 19:38:47 -07:00
Jason Volk
f373417b0b ircd::fs: Use for_each rather than transform here. 2019-02-28 17:53:01 -08:00
Jason Volk
eb1e510720 ircd::fs: Include <sys/sysmacros.h> if available. 2019-02-15 18:48:59 -08:00
Jason Volk
4d95daf8e3 ircd::fs: Add slice_usage_warning around io_submit() / open(2). 2019-02-12 12:04:01 -08:00
Jason Volk
db552e2ec4 ircd::fs: Add interface to filesystem::relative() function. 2019-02-07 20:49:50 -08:00
Jason Volk
7b67b106b6 ircd::fs: Add convenience tls scratch buffers for name and path manip. 2019-02-07 20:49:26 -08:00
Jason Volk
5b3bee79a6 ircd::fs: Normalize buffering for path interface; add path features. 2019-01-25 11:49:24 -08:00
Jason Volk
2886924bf0 ircd::fs: Reorg path interface related. 2019-01-25 10:39:37 -08:00
Jason Volk
14b57f2eac ircd: Rename aio.h/aio.cc with fs_ prefix. 2019-01-23 13:20:38 -08:00
Jason Volk
cbf456a388 ircd: Rename and refactor ircd::assertion interface into ircd::panic. 2019-01-13 16:37:31 -08:00
Jason Volk
c2103ec0d6 ircd::fs: Add sysfs access interface. 2019-01-01 21:15:10 -08:00
Jason Volk
23c1a87c4c ircd::fs: Add tools for device related. 2019-01-01 19:53:12 -08:00
Jason Volk
663b164f39 ircd::fs: Abstract the common options into opts struct. 2018-12-29 20:02:22 -08:00
Jason Volk
3466597981 ircd::fs: Various reorg; cleanup. 2018-12-29 19:43:17 -08:00
Jason Volk
30dc2ce7ed ircd::fs: Various cleanup / renames. 2018-12-28 15:30:29 -08:00
Jason Volk
dad9ec8e44 ircd::fs: Increase default io_submit threshold. 2018-12-27 15:05:21 -08:00
Jason Volk
5fb887096b ircd::fs: Prevent ODR warnings from these weak defs. 2018-12-26 15:49:08 -08:00
Jason Volk
29e7fa3515 ircd::ctx: Use closure for continuation. 2018-12-22 21:03:14 -08:00
Jason Volk
37ba013413 ircd::ctx: Simplify continuation; eliminate to_asio derived type. 2018-12-22 20:11:00 -08:00
Jason Volk
c2b344b74e ircd: Allow exceptions to propagate from various interruptors. 2018-12-22 17:24:48 -08:00
Jason Volk
69e3677dd5 ircd::fs: Add instrumentation related for dynamic stack array. 2018-12-21 13:19:34 -08:00
Jason Volk
a5ebc28928 ircd::fs::aio: Reorganize with symbol overriding; add conf items. 2018-12-21 13:04:57 -08:00
Jason Volk
c3d95aa8de ircd::fs: Remove the thread_local convenience for make_iov(). 2018-12-21 12:57:58 -08:00
Jason Volk
2f36fec41a ircd::fs: Cleanup the duplicate support state indicators. 2018-12-21 12:09:44 -08:00
Jason Volk
152060da36 ircd::fs: Create iov on the stack rather than with tls. 2018-12-21 10:28:51 -08:00
Jason Volk
b4910319e0 ircd: Add various comments / documentations. 2018-12-19 12:35:21 -08:00
Jason Volk
582628fb71 ircd::fs: Add read/write options to restart operation on EINTR. 2018-12-18 14:44:25 -08:00
Jason Volk
254d5ccb50 ircd::fs: Add 'all' write option with internal loop. 2018-12-18 14:44:25 -08:00
Jason Volk
bb3a68a95e ircd::fs: Handle partial reads internally with 'all' option. 2018-12-18 14:44:25 -08:00
Jason Volk
c3cf4c02dd ircd::fs: Use posix iov in AIO interface arguments. 2018-12-18 14:21:09 -08:00
Jason Volk
77a84b18d3 ircd::fs: Add offset to make_iov() suite. 2018-12-18 14:21:09 -08:00
Jason Volk
81ca6fecf4 ircd::fs: Add slice usage warning reasons; simplify conditional logic. 2018-12-17 16:20:54 -08:00
Jason Volk
a2a66eb314 ircd::fs: Deinline various error ctor; simplify various error handling. 2018-12-15 20:50:32 -08:00
Jason Volk
2cc7831770 ircd::fs: Add option to bypass AIO for specific operations. 2018-12-15 18:17:59 -08:00
Jason Volk
c4d5f03725 ircd::fs: Add compat interface for range flush()/sync(). 2018-12-13 18:04:48 -08:00
Jason Volk
5e8d5562da ircd::fs: Simplify interface. 2018-12-13 17:46:08 -08:00
Jason Volk
9d423f84d8 ircd:;fs: Rename various fsync/sync related. 2018-12-13 16:54:09 -08:00
Jason Volk
b80735c575 ircd::fs: Add sync()/syncfs(). 2018-12-12 13:16:47 -08:00