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

185 commits

Author SHA1 Message Date
Jason Volk
e0e4bde691 ircd::fs: Fix debug log format string. 2019-06-13 15:33:20 -06:00
Jason Volk
32e94931a7 ircd::fs: Add ability to change basepath values at runtime. 2019-06-06 17:38:12 -07:00
Jason Volk
38bfb56661 ircd::fs: Add typedefs for vector_view's used to build paths. 2019-06-06 17:03:02 -07:00
Jason Volk
143e4bda7b ircd::fs: Add debug log message showing support flags on startup. 2019-06-06 04:44:00 -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
0575f9c500 ircd::fs: Eliminate uses of GNU ifunc. 2019-06-04 16:37:29 -07:00
Jason Volk
129676d06e ircd::fs: Use portable device sysmacros. 2019-06-04 15:05:21 -07:00
Jason Volk
0d88c5326f ircd::fs: Reduce log message impact. 2019-06-02 01:06:14 -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
e670afbac8 ircd::fs: Return zero rather than propagating exception from write_life getter. 2019-05-08 19:10:36 -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
7f18bb17e2 ircd::fs: Precondition definition rather than as weak symbol. 2019-05-05 17:47:46 -07:00
Jason Volk
861df761fe ircd::fs: Add runtime support indicators for write_life related features. 2019-05-05 17:46:50 -07:00
Jason Volk
82200a9abd ircd::fs: Add write_life hint fcntl front. 2019-05-03 19:53:05 -07:00
Jason Volk
c9ab8c345c ircd::fs: Explicit fcntl.h inclusion in fs.cc. 2019-05-03 06:09:58 -07:00
Jason Volk
d9812f3e86 ircd::fs: Add an evict() front to cache interface; add preconditions. 2019-05-03 05:52:12 -07:00
Jason Volk
e75c9fe54c ircd::fs: Split and improve fincore(). 2019-05-03 05:48:50 -07:00
Jason Volk
d544c37d3d ircd::fs: Abstract the posix_fadvise wrapping. 2019-05-03 03:33:45 -07:00
Jason Volk
c0f7daaff4 ircd::fs::aio: Fix warning indicator placement. 2019-04-26 06:21:30 -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
acd774c3ee ircd::fs: Make ~fd() noexcept. 2019-04-22 09:16:11 -07:00
Jason Volk
7d55468511 ircd::fs: Add fd::opts getter from open fd. 2019-04-22 09:14:46 -07:00
Jason Volk
d08bcc2f32 ircd::fs: Add fd::release() memfn. 2019-04-22 08:55:42 -07:00
Jason Volk
f145c6774a ircd::fs: Rename function. 2019-04-21 04:15:10 -07:00
Jason Volk
003f9f771a ircd::fs: Break from read()/write() loops for non-blocking operations without exception. 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
fbcd38fa17 ircd::fs: Add a preliminary fincore(1)-like tool. 2019-04-20 19:24:18 -07:00
Jason Volk
4d3727a0a1 ircd::fs: Condition various runtime support on compilation too. 2019-04-17 19:19:30 -07:00
Jason Volk
1eaff2e91e ircd::fs: Runtime binding for pwritev(2)/pwritev2(2) based on kernel version. 2019-04-17 19:19:30 -07:00
Jason Volk
6fbf882e16 ircd::fs: Use GNU indirect function binding to efficiently support RWF_APPEND at runtime. 2019-04-17 19:09:16 -07:00
Jason Volk
7794a92159 ircd::exception: Avoid repeating the system_error message string. 2019-04-11 07:50:48 -07:00
Jason Volk
ce9a9e58b4 ircd::fs: Switch to syscall_usage_warning for io_submit and fsync et al. 2019-04-10 20:18:50 -07:00
Jason Volk
a1863ba3b2 ircd::fs: Minor cleanup. 2019-04-09 21:08:15 -07:00
Jason Volk
6ff3c88fa4 ircd::fs: Add a wait() interface. 2019-04-07 17:59:52 -07:00
Jason Volk
3bed48011d ircd::fs: Add non-blocking option passed to fd ctor's open(2) fwiw. 2019-04-07 16:45:35 -07:00
Jason Volk
9994836db0 ircd::fs: Add and use dedicated log facility for ircd::fs. 2019-04-07 16:28:21 -07:00
Jason Volk
d118a0e743 ircd::fs: Add enumerated op codes to identify request types. 2019-04-06 12:13:16 -07:00
Jason Volk
f7dc5f6146 ircd::fs: Add fd fdno ctor. 2019-03-31 23:57:35 -07:00
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