0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-06-28 23:08:20 +02:00
Commit graph

59 commits

Author SHA1 Message Date
Jason Volk a36d473708 ircd::fs::aio: Rename function. 2018-12-29 19:43:17 -08:00
Jason Volk c8d5543c11 ircd::fs::aio: Improve handling of return and error behaviors of io_submit. 2018-12-29 19:43:17 -08:00
Jason Volk afba6c2b5c ircd::fs::aio: Add close-on-exec flag to the eventfd. 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 7a9d70f15d ircd::aio: Add a reference to the fs opts structure for the request. 2018-12-26 15:40:22 -08:00
Jason Volk 528dff78ff ircd::aio: Flush the io_submit queue on all non-reading ops. 2018-12-26 15:16:31 -08:00
Jason Volk 308b27cda1 ircd::aio: Simplify the submit(request) procedure. 2018-12-22 17:24:48 -08:00
Jason Volk 97880281f8 ircd::aio: No need to post more than one chaser at a time. 2018-12-22 12:13:31 -08:00
Jason Volk 1262163805 ircd::fs::aio: Add condition to submit for queue full; assertions; minor cleanup. 2018-12-21 13:25:08 -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 2c5d6bb7ba ircd::fs::aio: Preliminary io_submit queue to leverage disk controller optimizations. 2018-12-21 10:36:05 -08:00
Jason Volk 68d0561788 ircd::aio: Reorder definitions. 2018-12-20 13:41:00 -08:00
Jason Volk 0d21e05c09 ircd::aio: Minor cleanup. 2018-12-20 13:37:25 -08:00
Jason Volk 7c24e6dab6 ircd::aio: Reduce the max events constant. 2018-12-20 11:52:46 -08:00
Jason Volk bd5ecceb65 ircd::info: Reorg / add some more info. 2018-12-18 16:01:45 -08:00
Jason Volk 0006fa85ce ircd::aio: Reduce the max events const. 2018-12-18 15:45:06 -08:00
Jason Volk c3cf4c02dd ircd::fs: Use posix iov in AIO interface arguments. 2018-12-18 14:21:09 -08:00
Jason Volk 9d423f84d8 ircd:;fs: Rename various fsync/sync related. 2018-12-13 16:54:09 -08:00
Jason Volk 965ecd16e5 ircd::fs: Break apart / improve make_iov() related stack / cleanup typedefs. 2018-12-01 15:46:38 -08:00
Jason Volk 3ab6d4df79 ircd::fs::aio: Improve stats related. 2018-11-29 13:46:44 -08:00
Jason Volk c9b10bd841 ircd::fs: Use better typedefs for vector_view of buffers. 2018-11-28 17:10:17 -08:00
Jason Volk eff4c475e3 ircd::fs: Add iov util header; make aio interface to fs exclusively iov. 2018-11-28 16:53:04 -08:00
Jason Volk 67772facef ircd::fs::aio: Add specific read and write stat counters. 2018-11-28 15:01:00 -08:00
Jason Volk 5cdd2e6376 ircd::fs::aio: Add statistics for AIO subsystem w/ console cmd. 2018-11-27 19:54:24 -08:00
Jason Volk 12cf8c8772 ircd::fs::aio: Add additional assertions. 2018-11-27 19:53:32 -08:00
Jason Volk 0451dfd925 ircd::fs::aio: Add iovec bytes counter. 2018-11-27 19:53:05 -08:00
Jason Volk 062906143f ircd::fs: Add an fs/aio.h header. Reorg various aio namespace related. 2018-11-27 18:09:12 -08:00
Jason Volk 36bb0d3175 ircd: Integrate all boost::system::system_error with stdlib. 2018-11-08 23:05:11 -08:00
Jason Volk 8db063bfc4 ircd::fs: Remove internal alignment paddings. 2018-11-01 22:23:04 -07:00
Jason Volk 13e6e02901 ircd::fs: Improve request priority value related; get sysconf info. 2018-11-01 20:19:55 -07:00
Jason Volk 6b6106499f ircd::fs: Add write_options.alignment; padding out to alignment for aio write. 2018-10-31 17:00:17 -07:00
Jason Volk 88be871149 ircd::aio: Switch to PREADV/PWRITEV iovector operations. 2018-10-31 16:29:20 -07:00
Jason Volk 02f64c7f34 ircd: Add ios unit to provide a more central control point for asio. 2018-10-17 05:12:10 -07:00
Jason Volk e8e2ca4850 ircd::fs: Reorg some #include statements. 2018-08-28 20:15:40 -07:00
Jason Volk a4e4424ede ircd: Improve main control flow for termination condition during init. 2018-08-28 15:04:23 -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 35a0f1ea51 ircd::aio: Various cleanup. 2018-08-20 22:57:33 -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 6e0f53c00d ircd::aio: Minor cleanup / reorg interface definition location. 2018-08-18 22:52:08 -07:00
Jason Volk 682c4651d2 eircd::aio: Update some assumptions; minor cleanup. 2018-08-17 12:51:49 -07:00
Jason Volk 0d642aae31 ircd::aio: More appropriate cast here. 2018-05-31 06:14:39 -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