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
Thomas Schoebel-Theuer
d70a415b9a
aio: fix dirty_head completion
2013-07-10 09:53:59 +02:00
Thomas Schoebel-Theuer
5103e7b46c
aio: increase robustness of file descriptors
2013-07-10 07:16:19 +02:00
Thomas Schoebel-Theuer
c9bb358239
aio: improve debugging
2013-07-10 07:16:19 +02:00
Thomas Schoebel-Theuer
62e2f5944b
aio: finally fix race on dirty area at the end
2013-07-04 07:21:01 +02:00
Thomas Schoebel-Theuer
83b75845c3
aio: remove obsolete clever_sync
2013-07-04 07:21:01 +02:00
Thomas Schoebel-Theuer
f3613177a2
aio: prefer fdatasync() over filemap_write_and_wait_range()
2013-07-04 07:21:00 +02:00
Thomas Schoebel-Theuer
81ca278291
aio: fix race on file size
...
The old code used mf->mf_max for correcting the file size, but that
was wrong for multiple writes in flight.
A really correct solution would have to remember all in-flight writes
and compute their minimum IO position. Since that would be too
costly, we just use the old size before any writes have started.
This might be too conservative for extremely high load patterns
(possible starvation problem). For now, take this and check whether
we really need higher effort.
2013-06-20 15:08:28 +02:00
Thomas Schoebel-Theuer
a1caef264c
aio: avoid cluttering the log messages
2013-05-13 12:50:29 +02:00
Thomas Schoebel-Theuer
5a5ea9bc52
infra: initialize IO transfer metadata correctly
2013-04-16 10:42:16 +02:00
Thomas Schoebel-Theuer
27fd43cb31
infra: remove obsolete black interface
...
The backing file should not be exposed from the brick blackbox.
2013-04-16 10:42:16 +02:00