Commit Graph

459 Commits

Author SHA1 Message Date
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
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 49d0d9183c infra: avoid double say logging 2018-01-31 07:45:55 +01:00
Thomas Schoebel-Theuer 7b54f1d341 infra: remove senseless non-atomic alloc 2018-01-31 07:45:55 +01:00
Thomas Schoebel-Theuer f2b1e61812 infra: replace say rwlock by rwsem 2018-01-31 07:45:55 +01:00
Thomas Schoebel-Theuer f7e9619ab7 infra: factor out atomic testing 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 e5bb5ade55 logger: replace spinlock by rwsem 2018-01-31 07:24:00 +01:00
Thomas Schoebel-Theuer d2786079f6 logger: replace rwlock by rwsem 2018-01-31 07:24:00 +01:00
Thomas Schoebel-Theuer 2fef63b72a client: replace spinlock with mutex 2018-01-31 07:23:41 +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 b2cf8686de infra: use new mapfree 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 65f9892165 infra: use rwsem at mapfree 2017-12-10 19:39:59 +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 981dc07a6d all: deletions tuning 2017-09-11 11:34:20 +02:00
Thomas Schoebel-Theuer 56d7f72a62 net: early detection of socket hangups 2017-09-08 23:42:30 +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 c117bffa11 logger: reset limiter 2017-07-05 07:37:12 +02:00
Thomas Schoebel-Theuer a856db082b server: update limiter during idle time 2017-07-05 07:37:12 +02:00