0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-12-12 00:22:58 +01:00
Commit graph

70 commits

Author SHA1 Message Date
Jason Volk
3426fc650f ircd::fs: Test if O_DIRECT possible on path target. 2018-09-04 01:43:21 -07:00
Jason Volk
107e4b59af ircd::fs: Use the gnu_dev_*() suite rather than sys/types macros. 2018-09-01 23:51:54 -07:00
Jason Volk
5dd9b7a3cf ircd::fs: Support for finding the O_DIRECT alignments from system. 2018-08-28 20:15:40 -07:00
Jason Volk
5825b21231 ircd::fs: Disable fsync()/fdatasync() via AIO for now. 2018-08-24 00:40:35 -07:00
Jason Volk
e0024b82ea ircd::fs: Use fallocate() rather than posix_fallocate(); add keep_size. 2018-08-23 23:08:41 -07:00
Jason Volk
f666728d37 ircd::fs: Add assertion; minor. 2018-08-23 23:08:41 -07:00
Jason Volk
e3827124e9 ircd::fs: Use lseek() for size(fd) overload. 2018-08-23 23:08:22 -07:00
Jason Volk
79d4c15ff5 ircd::fs: Deinline and improve append() related. 2018-08-23 23:08:22 -07:00
Jason Volk
55b2b128c6 ircd::fs: Add an fallocate wrapper for now. 2018-08-23 21:24:35 -07:00
Jason Volk
0ce45b50d6 ircd::fs: Add truncate() suite. 2018-08-23 21:24:19 -07:00
Jason Volk
888862ec56 ircd::fs: Deinline and improve overwrite() suite. 2018-08-23 21:23:42 -07:00
Jason Volk
1a1002c96d ircd::fs: Propagate error_code through exception system; improve stack. 2018-08-23 03:31:36 -07:00
Jason Volk
32285d5dac ircd::fs: Add a uuid-ish util for an fd. 2018-08-20 22:44:39 -07:00
Jason Volk
b5c2270e8c ircd::fs: Add prefetch skeleton linkage. 2018-08-18 23:08:55 -07:00
Jason Volk
adee757303 ircd::fs: Add fsync()/fdsync() w/ AIO. 2018-08-18 23:02:34 -07:00
Jason Volk
d7075d73e5 ircd::fs: Additional make_path() overload. 2018-08-17 12:51:49 -07:00
Jason Volk
951cd4ad63 ircd::fs: Update/fix syspaths related. 2018-08-12 16:46:52 -07:00
Jason Volk
32b6e018c9 ircd::fs: Show path in rethrown errmsg. 2018-08-12 16:42:50 -07:00
Jason Volk
9ae4e225d3 ircd::fs: Automatic -p behavior for mkdir(). 2018-08-12 16:38:50 -07:00
Jason Volk
8fb580aaf5 configure/ircd: Overhaul install system directory related. 2018-08-12 16:30:51 -07:00
Jason Volk
57bfe311c6 ircd::fs: Add experimental stdin::tty support. 2018-06-03 09:49:00 -07:00
Jason Volk
79b2bdfb42 ircd::fs: Add prefetch(). 2018-06-02 11:44:53 -07:00
Jason Volk
45155d5e4d ircd::fs: Add fd::opts nocreate open() option. 2018-05-30 04:59:05 -07:00
Jason Volk
8395a7844c ircd::fs: Add fd::opts direct and cloexec flags; reorg fd ctor related. 2018-05-30 04:59:05 -07:00
Jason Volk
f8ea91cdee ircd::fs: Add append(fd) with explicit lseek(SEEK_END). 2018-05-30 04:59:04 -07:00
Jason Volk
ead2a567ad ircd::fs: Refactor fs::write stack for fs::fd. 2018-05-30 04:59:04 -07:00
Jason Volk
501e82e8aa ircd::fs: Refactor fs::read stack for fs::fd. 2018-05-30 04:59:04 -07:00
Jason Volk
a9e73d898c ircd::fs: Add size(fd) from sys stat(). 2018-05-30 04:59:04 -07:00
Jason Volk
955d8921b9 ircd::fs: Add basic fd wrapper object. 2018-05-30 04:59:04 -07:00
Jason Volk
4cb6845ac1 ircd::fs: Use vector_view for make_path related. 2018-05-24 19:11:05 -07:00
Jason Volk
bf445492db ircd::fs: Use const_buffer rather than string_view in various returns. 2018-04-24 18:34:46 -07:00
Jason Volk
a08670cf48 ircd::fs: Support the yielding stdin readline in libircd. 2018-03-23 22:52:36 -07:00
Jason Volk
4670fdbd1b ircd: Remove ircd::error_code typedef with more local typedefs. 2018-03-08 10:08:38 -08:00
Jason Volk
ceac1d96ac ircd::fs: Add missing exception translation to read()/write() dispatchers. 2018-02-26 20:45:40 -08:00
Jason Volk
e37a8599f7 ircd::fs: Add remove() / rename() support. 2018-02-26 20:45:14 -08:00
Jason Volk
121be689e8 ircd::fs: Fix namespace ambiguities; various interface updates. 2018-02-26 20:35:09 -08:00
Jason Volk
7142cbf735 ircd: Move magic out of fs::. 2018-02-18 22:54:54 -08:00
Jason Volk
f5197cc8ff ircd::fs: Add magic interface. 2018-02-18 01:12:09 -08:00
Jason Volk
4a56c0a1cd ircd::fs: Asynchronous writes to local filesystem. 2018-02-06 00:02:18 -08:00
Jason Volk
79198527a7 configure/ircd: Consider all boost headers unconditional. 2018-02-05 21:24:36 -08:00
Jason Volk
be624ca7f6 Update Copyrastafaris. 2018-02-05 21:24:34 -08:00
Jason Volk
d53eef4ab6 ircd: Eliminate the raw_buffer concept. 2018-02-05 18:54:55 -08:00
Jason Volk
cc1b82cd59 ircd::fs: Log a warning when there's no support for any async IO. 2018-01-24 11:50:50 -08:00
Jason Volk
6b7399bf4a ircd::fs: Simplify API/AIO by eliminating callback: ctx yield only for now. 2018-01-15 03:12:56 -08:00
Jason Volk
c698101d6d ircd::fs: Initial asynchronous file IO support for Linux platforms. 2018-01-10 22:09:05 -08:00
Jason Volk
8acdf52443 ircd::fs: Use direct kernel interface rather than glibc aio nonsense. 2018-01-10 00:55:08 -08:00
Jason Volk
6a552e349e ircd: Preliminary AIO experimental stub on linux platforms. 2018-01-09 16:49:53 -08:00
Jason Volk
bdf696b91f ircd::fs: Add these string_view overloads.
This is to not force string conversions in callerspace. Right now everything
gets converted to std::string internally but eventually string_view may be
preferable. Either way the overload finds the best behavior for now.
2017-12-24 20:25:40 -07:00
Jason Volk
27721860c2 ircd::fs: Add a file sizing suite. 2017-12-24 20:25:40 -07:00
Jason Volk
ea26fd0016 ircd::fs: Path cleanup. 2017-11-30 11:23:46 -08:00