Commit Graph

64 Commits

Author SHA1 Message Date
Thomas Schoebel-Theuer
8544ef4117 aio: safeguard potential race on fd_uninstall 2021-03-02 10:12:56 +01:00
Thomas Schoebel-Theuer
5237ca4b16 all: adapt to SO_SNDTIMEO_NEW 2021-02-10 13:36:06 +01:00
Thomas Schoebel-Theuer
d0c5b5699f all: adapt to removal of get_ds()
See 736706bee3298208343a76096370e4f6a5c55915
2021-02-10 13:36:06 +01:00
Thomas Schoebel-Theuer
bb6506476f aio: use old timespec for compatibility 2021-02-10 13:36:06 +01:00
Thomas Schoebel-Theuer
5097f10253 compat: adapt to new ksys_io_submit and siblings 2021-02-10 13:36:06 +01:00
Thomas Schoebel-Theuer
5f65747fe3 compat: adapt to kernel 4.17 and new prepatch 2021-02-10 13:36:06 +01:00
Thomas Schoebel-Theuer
e58a5e4cee infra: propagate any open error code 2020-09-30 10:34:14 +02:00
Thomas Schoebel-Theuer
41507c7392 aio: show and compute total_* statistics only when debugging 2020-08-11 09:17:52 +02:00
Thomas Schoebel-Theuer
3883b2bf10 aio: do not follow symlinks on O_CREAT 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
ea4fbc1885 all: remove superfluous dealloc tests and clears 2020-07-08 21:00:05 +02:00
Thomas Schoebel-Theuer
5d4f14c43d aio: fix internal race with callback 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
9b81d52ffd aio: fix short reads crossing EOF 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
d87fb27473 all: deprecate mref_skip_sync 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
40e72f9e7d all: deprecate mref_rw and mref_may_write 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
fca091e087 aio: self-tune aio_max_nr when possible 2020-01-31 08:07:12 +01:00
Thomas Schoebel-Theuer
30509509a1 aio: further speedup event_thread termination 2020-01-25 20:15:13 +01:00
Thomas Schoebel-Theuer
d63b5e72b0 aio: stop submit_thread earlier 2020-01-24 17:44:04 +01:00
Thomas Schoebel-Theuer
ca3cda8a01 aio: speed up event_thread termination 2020-01-24 17:44:04 +01:00
Thomas Schoebel-Theuer
b1b812beaa aio: stop sync_thread earlier 2020-01-24 17:44:04 +01:00
Thomas Schoebel-Theuer
ee05ff096e aio: adapt to upstream commit 2055da97389a605c8a00d163d40903afbe413921 2019-12-25 09:19:08 +01:00
Thomas Schoebel-Theuer
222f048937 all: adapt to new timespec64 type 2019-12-25 09:19:07 +01:00
Thomas Schoebel-Theuer
25fde8b5f9 aio: fix potential race on fd 2019-04-16 09:20:49 +02:00
Thomas Schoebel-Theuer
8e1b163936 aio: fix forgotten upstream init for get_unused_fd() 2019-04-16 09:20:49 +02:00
Thomas Schoebel-Theuer
20fc88fed9 aio: fix potential race at get_unused_fd() 2019-04-16 09:20:48 +02:00
Thomas Schoebel-Theuer
d58c4f317d aio: safeguard against RLIMIT_NOFILE
When setting RLIMIT_NOFILE to ridicuously wrong values, it was possible
to get an endless loop.
2019-04-16 09:20:48 +02:00
Thomas Schoebel-Theuer
05e17fb881 aio: adapt to upstream commit 723c038475b78edc9327eb952f95f9881cc9d7 2019-02-19 07:26:32 +01:00
Thomas Schoebel-Theuer
8b6f93a6db aio: replace spinlock with mutex 2018-01-31 07:21:08 +01:00
Thomas Schoebel-Theuer
1a73763913 all: remove old dirtifying 2017-12-10 20:54:27 +01:00
Thomas Schoebel-Theuer
7d64386a21 aio: use new mapfree dirtifying 2017-12-10 20:54:27 +01:00
Thomas Schoebel-Theuer
d8eac2ecba all: new mapfree dirtifying 2017-12-10 20:54:27 +01:00
Thomas Schoebel-Theuer
57c9da1800 aio: fix race on array index 2017-06-04 17:56:46 +02:00
Thomas Schoebel-Theuer
2d7f602a32 aio: disable irqs during spinlocks 2017-05-16 10:23:06 +02:00
Thomas Schoebel-Theuer
37f738bb5c aio: workaround standard Unix filehandles 2017-05-14 16:57:01 +02:00
Thomas Schoebel-Theuer
f654129e94 compat: disable aio when necessary 2017-05-04 09:16:17 +02:00
Thomas Schoebel-Theuer
1f11a21f53 aio: decrease context table 2017-02-09 10:13:31 +01:00
Thomas Schoebel-Theuer
d6e5b979ac aio: adapt to changes in get_unused_fd()
Only relevant for the out-of-tree version.

The AIO stuff needs to be re-implemented anyway.
2016-08-25 15:39:06 +02:00
Thomas Schoebel-Theuer
634499d3d2 all: testing of hangs 2016-08-09 09:37:09 +02:00
Thomas Schoebel-Theuer
4d31d09534 all: remove CONFIG_MARS_BIGMODULE 2016-03-03 09:33:34 +01:00
Thomas Schoebel-Theuer
c6235c71d5 aio: fix race on shutdown 2015-07-15 10:38:49 +02:00
Thomas Schoebel-Theuer
7d66938666 aio: fix portability to changed kernels / kthread implementation
In the long term, mars_aio will be replaced anyway because it
uses userspace concepts like ioctx.

Don't use the internal kthread_stop_nowait() anymore.
It is too cumbersome to catch up with upstream development.
2015-03-23 13:48:10 +01:00
Thomas Schoebel-Theuer
77714f374e aio: safeguard ioctx 2015-03-23 13:48:10 +01:00
Thomas Schoebel-Theuer
c35065fe97 infra: report global IO hangs 2015-02-27 11:32:57 +01:00
Thomas Schoebel-Theuer
5d81381664 all: disallow sync IO during emergency mode 2015-02-11 15:20:26 +01:00
Thomas Schoebel-Theuer
aa09d7df30 all: clarify license GPLv2+ 2014-11-25 18:09:17 +01:00
Thomas Schoebel-Theuer
1439d30ffb all: port to newer kernels (up to 3.15) 2014-06-18 12:10:55 +02:00
Thomas Schoebel-Theuer
7aebfdf6bb all: remove __exit annotation 2014-04-24 18:08:31 +02:00
Thomas Schoebel-Theuer
a35585325d aio: fix dirty_stage 2014-04-20 07:35:29 +02:00
Thomas Schoebel-Theuer
2f4696a9cc all: fix logfile size propagation 2014-03-31 06:59:09 +02:00
Thomas Schoebel-Theuer
8d0ce5c9bd aio: fix races in EOF computation 2014-03-26 11:43:05 +01:00
Thomas Schoebel-Theuer
f45c3fbdd3 aio: use aio_sync_mode=2 by default 2014-03-19 11:30:22 +01:00