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
867be8a743
logger: fix writeback in pressure mode
2019-04-06 19:55:57 +02:00
Thomas Schoebel-Theuer
3320529ffb
logger: rename old floating_mode to pressure_mode
2019-04-06 19:55:57 +02:00
Thomas Schoebel-Theuer
620e460471
Revert "logger: fix writeback in non-floating mode"
...
This reverts commit 079a5f7714
.
2019-04-06 19:55:57 +02:00
Thomas Schoebel-Theuer
5b2672e211
logger: reduce atomic_t overhead for production
2019-03-12 12:47:25 +01:00
Thomas Schoebel-Theuer
079a5f7714
logger: fix writeback in non-floating mode
2019-03-12 12:47:25 +01:00
Thomas Schoebel-Theuer
388015ae37
mem: reproducible builds on newer compilers
2019-03-02 22:14:15 +01:00
Thomas Schoebel-Theuer
6773712672
if: fix bio_get stack corruption when bio is on stack
...
I am unsure whether this might break compatibility to some
very ancient kernels.
AFAICR, it could have been needed long ago, when some old 32bit
kernels needed kmap().
Anyway, I don't have those old kernels anymore.
2019-03-02 22:14:14 +01:00
Thomas Schoebel-Theuer
05e17fb881
aio: adapt to upstream commit 723c038475b78edc9327eb952f95f9881cc9d7
2019-02-19 07:26:32 +01:00
Thomas Schoebel-Theuer
0d48be8a7e
compat: adapt to 5955102c9984fa081b2d570cfac75c97eecf8f3b
2019-02-19 07:26:32 +01:00
Thomas Schoebel-Theuer
70f844da98
infra: fix wrong version detection
2019-02-19 07:26:32 +01:00
Thomas Schoebel-Theuer
312660c598
all: adapt to block layer changes, kernel 4.8
2019-02-19 07:26:32 +01:00
Thomas Schoebel-Theuer
ffb07986a0
infra: make KASAN happy
2019-02-19 07:26:31 +01:00
Thomas Schoebel-Theuer
b465105a18
main: fix if shutdown race with writeback
2019-02-12 11:02:06 +01:00
Thomas Schoebel-Theuer
ce456788a4
if: propagate real physical and logical sector sizes
2019-02-12 11:02:06 +01:00
Thomas Schoebel-Theuer
45d3ff4226
if: remember info
2019-02-12 11:02:06 +01:00
Thomas Schoebel-Theuer
ee580d6aa8
bio: get real physical and logical sector sizes
2019-02-12 11:02:06 +01:00
Thomas Schoebel-Theuer
a1dc791412
main: fix detach during sync when names are changing
2019-02-12 11:02:06 +01:00
Thomas Schoebel-Theuer
ad69d1cf79
lib_log: also convert to brick_wait
2019-02-12 11:02:06 +01:00
Thomas Schoebel-Theuer
e7fa3fa130
infra: make brick_wait upstream independent
2019-02-12 11:02:05 +01:00
Thomas Schoebel-Theuer
52b2cf2726
if: provisionary substitute for merge_bvec()
...
This might potentially worsen IO performance somewhat. Please report
any _reproducible_ issues, together with a reproducer.
2019-01-16 16:49:45 +01:00
Thomas Schoebel-Theuer
0db016a317
if: use blk_queue_max_hw_sectors()
2019-01-16 12:04:31 +01:00
Thomas Schoebel-Theuer
4f008ca001
if: introduce blk_queue_split
...
This is an absolute MUST for newer kernels, starting with 4.3.x.
2019-01-16 12:04:31 +01:00
Thomas Schoebel-Theuer
25edeb727f
if: fix segment size
2019-01-16 12:04:31 +01:00
Thomas Schoebel-Theuer
a2031b1970
infra: fix KASAN splat during dealloc
2018-11-26 11:15:19 +01:00
Thomas Schoebel-Theuer
879c3f5dfd
bio: fix offset checking for debug kernels
2018-11-26 11:15:19 +01:00
Thomas Schoebel-Theuer
d6511758a3
server: fix stupid typo
2018-11-26 11:15:19 +01:00
Thomas Schoebel-Theuer
0d579d48ba
net: fix O_NONBLOCK races
...
Runtime modification of _shared_ socket flags like O_NONBLOCK
is a bad idea. If I remember correctly, long ago there was no
other way. Current kernels allow different flags on the stack per
kernel_*() call, but I am not sure whether this could break
compatibility with some very ancient kernels. Unfortunately, I
cannot test MARS with these dinosaur kernels anymore, but hopefully
nobody uses them anyway.
2018-10-22 10:49:29 +02:00
Thomas Schoebel-Theuer
28ceff2388
copy: stabilize table for race prevention
2018-10-10 10:54:42 +02:00
Thomas Schoebel-Theuer
e6a1197432
logger: use brick_wait() for caller delay
2018-10-10 10:51:34 +02:00
Thomas Schoebel-Theuer
ba9c973d81
logger: improve wake up on memory shortage
2018-10-10 10:51:34 +02:00
Thomas Schoebel-Theuer
4b1ca21354
logger: fix condition checking using locks during wait
2018-10-10 10:51:34 +02:00
Thomas Schoebel-Theuer
1dff1a2f04
main: remove annoying orphan error message
2018-09-26 10:00:39 +02:00
Thomas Schoebel-Theuer
55200bbf5b
main: replicate systemd hints
2018-05-09 21:41:48 +02:00
Thomas Schoebel-Theuer
169eb0c0e9
main: trigger systemd
2018-05-09 07:54:39 +02:00
Thomas Schoebel-Theuer
988457b65b
infra: fix silly deadlock on improbable race
2018-05-09 07:54:38 +02:00
Thomas Schoebel-Theuer
3a94ffba5e
main: fix replay tolerance
2018-04-10 09:07:34 +02:00
Thomas Schoebel-Theuer
d32251179b
all: replace replay magic numbers by named constants
2018-04-10 09:04:41 +02:00
Thomas Schoebel-Theuer
f53d3912cc
main: earlier report replay position
2018-04-10 09:03:46 +02:00
Thomas Schoebel-Theuer
acdae43963
client: dont try get_info when brick isnt working
2018-03-19 06:41:10 +01:00
Thomas Schoebel-Theuer
b3b4fb2274
client: adapt timeout at get_info
2018-03-19 06:41:10 +01:00
Thomas Schoebel-Theuer
205f32efb0
cient: shut down socket before stopping thread
2018-03-19 06:41:10 +01:00
Thomas Schoebel-Theuer
8cf5d5bc15
client: earlier stop sender thread
2018-03-19 06:41:10 +01:00
Thomas Schoebel-Theuer
a3f168d727
client: earlier send stop on shutdown
2018-03-19 06:41:10 +01:00
Thomas Schoebel-Theuer
165f40ef41
client: adapt socket aborts to io_timeout
2018-03-19 06:41:10 +01:00
Thomas Schoebel-Theuer
a721d0daea
main: new timestamp ordering semantics
2018-03-13 08:29:48 +01:00
Thomas Schoebel-Theuer
dedaa5b55f
infra: new timestamp ordering
2018-03-13 08:29:48 +01:00
Thomas Schoebel-Theuer
9e31ee3438
main: silence annoying userspace error
2018-01-31 08:09:01 +01:00
Thomas Schoebel-Theuer
e1426525cd
infra: protect lamport clock against illegal future values
2018-01-31 08:09:00 +01:00