Commit Graph

284 Commits

Author SHA1 Message Date
Thomas Schoebel-Theuer
5be66cacb2 logger: make update_interval configurable 2019-06-26 11:00:17 +02:00
Thomas Schoebel-Theuer
30e3e073a1 logger: avoid writeback starvation by minimum update speed 2019-06-26 11:00:17 +02:00
Thomas Schoebel-Theuer
14d6e84fed infra: remove dead code 2019-06-26 10:57:27 +02:00
Thomas Schoebel-Theuer
867be8a743 logger: fix writeback in pressure mode 2019-04-06 19:55:57 +02: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
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
a1dc791412 main: fix detach during sync when names are changing 2019-02-12 11:02:06 +01:00
Thomas Schoebel-Theuer
a2031b1970 infra: fix KASAN splat during dealloc 2018-11-26 11:15:19 +01: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
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
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
Thomas Schoebel-Theuer
5818d254ce main: remote_trigger after deletions 2018-01-31 07:50:50 +01:00
Thomas Schoebel-Theuer
495c42c9d9 main: remote_trigger on open-count changes 2018-01-31 07:50:50 +01:00
Thomas Schoebel-Theuer
5cff1bac2a main: remote_trigger only from primary to secondaries 2018-01-31 07:50:30 +01:00
Thomas Schoebel-Theuer
de4263e8b9 main: remove dead code 2018-01-31 07:50:30 +01:00
Thomas Schoebel-Theuer
0cb5fb0179 main: hold remote_trigger on failure 2018-01-31 07:50:23 +01:00
Thomas Schoebel-Theuer
6177b74fee infra: user message infrastructure 2018-01-31 07:45:55 +01:00
Thomas Schoebel-Theuer
b790c99d5a main: replace spinlock by mutex 2018-01-31 07:45:21 +01:00
Thomas Schoebel-Theuer
b2cf8686de infra: use new mapfree dirtifying 2017-12-10 20:54:27 +01:00
Thomas Schoebel-Theuer
42543656dc main: auto logrotate on small /mars 2017-10-23 17:07:41 +02:00
Thomas Schoebel-Theuer
dedf7f3cdc main: fix writeback overflow when /mars has less space than RAM
Observed at Arsys prototype testing.
Thanks to Andoni Ayala for the problem report.
2017-10-23 16:43:28 +02:00
Thomas Schoebel-Theuer
9025283608 server: handler limit 2017-09-07 12:56:23 +02:00
Thomas Schoebel-Theuer
2d26b3d224 server: dent limit 2017-09-07 12:55:40 +02:00
Thomas Schoebel-Theuer
c0dfbde8a8 infra: fix mem leak from merge error 2017-09-05 11:23:44 +02:00
Thomas Schoebel-Theuer
3d2811c719 main: fix deadlock on uuid at leave-cluster
Similar to before:

root@m0:~# cat /proc/2642/stack
[<ffffffff810591cc>] kthread_stop+0x7f/0x10d
[<ffffffffa0172033>] _kill_peer.isra.7+0xf9/0x1ea [mars]
[<ffffffffa0172180>] peer_destruct+0xe/0x10 [mars]
[<ffffffffa016866a>] mars_free_dent+0x188/0x1b4 [mars]
[<ffffffffa0168a5a>] mars_dent_work+0x3c4/0x563 [mars]
[<ffffffffa0171265>] _main_thread+0x2b2/0x88d [mars]
[<ffffffff81059145>] kthread+0xb5/0xbd
[<ffffffff81660a19>] ret_from_fork+0x49/0x80
[<ffffffffffffffff>] 0xffffffffffffffff
root@m0:~# cat /proc/4282/stack
[<ffffffff81342154>] call_rwsem_down_read_failed+0x14/0x30
[<ffffffffa0166554>] mars_find_dent+0x19/0x3d [mars]
[<ffffffffa0172a30>] peer_thread+0x8ae/0xdc0 [mars]
[<ffffffff81059145>] kthread+0xb5/0xbd
[<ffffffff81660a19>] ret_from_fork+0x49/0x80
[<ffffffffffffffff>] 0xffffffffffffffff
2017-09-01 20:14:36 +02:00
Thomas Schoebel-Theuer
6c56b53850 infra: fix deadlock on leave-cluster & friends
root@m1:~# cat /proc/2661/stack
[<ffffffff810591cc>] kthread_stop+0x7f/0x10d
[<ffffffffa01660a5>] _kill_peer.isra.7+0xf9/0x1ea [mars]
[<ffffffffa01661f2>] peer_destruct+0xe/0x10 [mars]
[<ffffffffa015c66a>] mars_free_dent+0x188/0x1b4 [mars]
[<ffffffffa015ca5a>] mars_dent_work+0x3c4/0x563 [mars]
[<ffffffffa01652d7>] _main_thread+0x2b2/0x88d [mars]
[<ffffffff81059145>] kthread+0xb5/0xbd
[<ffffffff81660a19>] ret_from_fork+0x49/0x80
[<ffffffffffffffff>] 0xffffffffffffffff

root@m1:~# cat /proc/4473/stack
[<ffffffff81342154>] call_rwsem_down_read_failed+0x14/0x30
[<ffffffffa015a554>] mars_find_dent+0x19/0x3d [mars]
[<ffffffffa015dadc>] _mars_translate_hostname+0x86/0x126 [mars]
[<ffffffffa0166663>] peer_thread+0x46f/0xdc0 [mars]
[<ffffffff81059145>] kthread+0xb5/0xbd
[<ffffffff81660a19>] ret_from_fork+0x49/0x80
[<ffffffffffffffff>] 0xffffffffffffffff
2017-09-01 20:03:48 +02:00
Thomas Schoebel-Theuer
1e13c9e7ae all: document some deadlock danger on debug output 2017-08-29 18:53:24 +02:00
Thomas Schoebel-Theuer
45005f25c9 main: fix is_attached 2017-08-29 18:40:30 +02:00
Thomas Schoebel-Theuer
5b41b2fb84 infra: regularly prune the /mars dentry cache 2017-08-25 15:07:59 +02:00
Thomas Schoebel-Theuer
de8abf0284 main: report is-detached only when bio is gone 2017-08-21 21:16:37 +02:00
Thomas Schoebel-Theuer
68016194bc main: report is-detached for damaged resources 2017-08-21 21:16:36 +02:00
Thomas Schoebel-Theuer
45f9440842 main: protect rot list by rwsem 2017-07-26 11:08:56 +02:00
Thomas Schoebel-Theuer
3d9bbcb23c main: check alive link timestamp instead of tree version
The tree version might be updated less frequently.
2017-07-26 11:08:12 +02:00
Thomas Schoebel-Theuer
cf84aeba9f main: avoid fetch from failed peer for a while 2017-07-26 10:27:04 +02:00
Thomas Schoebel-Theuer
881f61bfcc main: fix abort of logfile fetching 2017-07-26 10:00:51 +02:00
Thomas Schoebel-Theuer
27eb38ff3e infra: add total statistics to limiter 2017-07-05 07:37:12 +02:00
Thomas Schoebel-Theuer
a983bf42de main: show peer debuginfo 2017-07-05 07:37:12 +02:00
Thomas Schoebel-Theuer
d976fde7fb main: replace peer_lock spinlock by rwsem 2017-07-05 07:37:12 +02:00
Thomas Schoebel-Theuer
0fafba3cd0 infra: better debugging 2017-05-22 11:25:00 +02:00
Thomas Schoebel-Theuer
d12b20ef1c main: fix hang of fetch 2017-05-22 11:25:00 +02:00
Thomas Schoebel-Theuer
95d10d02a2 main: disable irqs during spinlocks 2017-05-16 10:21:31 +02:00