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

126 commits

Author SHA1 Message Date
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
20d3fe1072 ircd::fs: Fix cause of STB_GNU_UNIQUE emission in template function. 2019-05-16 22:54:29 -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
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
d9812f3e86 ircd::fs: Add an evict() front to cache interface; add preconditions. 2019-05-03 05:52:12 -07:00
Jason Volk
d544c37d3d ircd::fs: Abstract the posix_fadvise wrapping. 2019-05-03 03:33:45 -07:00
Jason Volk
67380746b6 ircd::fs: Default write_opts::keep_size to true for fallocate() behavior. 2019-04-25 22:16:13 -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
fbcd38fa17 ircd::fs: Add a preliminary fincore(1)-like tool. 2019-04-20 19:24:18 -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
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
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
b6732b5fdf ircd::fs::aio: Optimize integer sizes of various stats. 2019-03-30 13:02:03 -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
89b258c5a7 ircd::fs: Improve fs::prefetch(). 2019-03-15 21:36:26 -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
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
1117947a22 ircd::fs::aio: Add support test for RWF_NOWAIT and RWF_APPEND. 2019-03-13 19:38:47 -07:00
Jason Volk
db552e2ec4 ircd::fs: Add interface to filesystem::relative() function. 2019-02-07 20:49:50 -08:00
Jason Volk
8206aa1ab9 ircd::fs: Add path string convenience templates. 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
a30c808b0e ircd: Start a README.md for any directory missing one; fix conformity of existing. 2019-01-26 12:29:08 -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
84309261b2 ircd::fs::aio: Even more counters. 2019-01-18 10:14:38 -08:00
Jason Volk
77295f3a3e ircd::fs: Minor comment clarification. 2019-01-05 17:18:43 -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
c93cd90db1 ircd::aio: Simplify stats. 2018-12-28 16:30:27 -08:00
Jason Volk
30dc2ce7ed ircd::fs: Various cleanup / renames. 2018-12-28 15:30:29 -08:00
Jason Volk
7f41ca2f48 ircd::fs: Add nodelay option to write_opts; relax the flush on write by default. 2018-12-27 14:58:04 -08:00
Jason Volk
0c5ebde1fc ircd::fs::aio: Add blocking point to manage io_submit's in flight; various reorg. 2018-12-27 14:58:03 -08:00
Jason Volk
69ae8308e5 ircd::fs::aio: Various improvements; fix cancel w/ queue; class member queues rather than tls. 2018-12-27 14:58:03 -08:00
Jason Volk
e58a975750 ircd::fs: Use a nice-style value for request priority; default to zero. 2018-12-27 14:58:03 -08:00
Jason Volk
444000faf1 ircd::fs: Add a nodelay option on reads. 2018-12-26 15:42:23 -08:00
Jason Volk
171f5ff623 ircd::fs: Use string_view for error fmt string args. 2018-12-24 13:34:59 -08:00
Jason Volk
3c4591b121 ircd::fs: Fix fs::error template. 2018-12-21 15:32:12 -08:00