Commit Graph

1182 Commits

Author SHA1 Message Date
Thomas Schoebel-Theuer
e1547a1387 net: better sending failure status code 2020-10-28 06:09:11 +01:00
Thomas Schoebel-Theuer
4b08aacf2a main: prefer fetch from originating peer 2020-10-28 06:09:08 +01:00
Thomas Schoebel-Theuer
dde0281e60 client: refresh info asynchronously 2020-10-27 20:08:05 +01:00
Thomas Schoebel-Theuer
d7adec9f1a main: fix cork on trigger 2020-10-27 09:13:45 +01:00
Thomas Schoebel-Theuer
b3111a9c6a infra: fix mars_readlink 2020-10-27 09:12:26 +01:00
Thomas Schoebel-Theuer
fd41b00373 main: fix and simplify parse_args 2020-10-01 14:15:12 +02:00
Thomas Schoebel-Theuer
cbcbed71d4 main: more precise err msg 2020-10-01 14:15:12 +02:00
Thomas Schoebel-Theuer
be05ce3cef main: fix wording of info message 2020-10-01 14:02:01 +02:00
Thomas Schoebel-Theuer
0a1967278b main: skip scanning deleted logfiles 2020-10-01 14:01:57 +02:00
Thomas Schoebel-Theuer
8032150f3e main: report disk-error 2020-09-30 14:24:25 +02:00
Thomas Schoebel-Theuer
e58a5e4cee infra: propagate any open error code 2020-09-30 10:34:14 +02:00
Thomas Schoebel-Theuer
03e69bdd5c infra: fix unnecessary unlink 2020-09-21 14:20:25 +02:00
Thomas Schoebel-Theuer
216267bb4b main: silence annoying error 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
5a4f1961be all: less msleep 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
a19f64119e infra: move check for backup string 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
7ef119320b infra: reduce string testing 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
114d9748ad main: restrict table searching to subdir entries 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
f65d18ddf5 main: introduce cl_childs and make contiguous 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
ed34d53136 main: remove unnecessary table entries for main worker 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
c48cb7580d infra: accept any symlinks for later network transfer 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
e77f856d86 infra: use dent hash list for searching 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
a93cfb06f4 net: also hash remote dentries 2020-09-18 17:45:57 +02:00
Thomas Schoebel-Theuer
ec962406c6 main: remove superfluous global from main_worker_fn and structures 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
302e7edfe7 infra: simplify mars_free_dent_all 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
aa3f65a1aa main: replace remote_dent_list with mars_global instances 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
1e5be3d1b9 infra: move dent transfer prototypes to strategy 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
7d55e6f02a infra: simplifiy dent search logic 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
47f5de0a09 main: safeguard dent 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
85b8b1312f infra: safeguard dent parent pointer 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
423ff91956 infra: better dent hash function 2020-09-17 18:02:15 +02:00
Thomas Schoebel-Theuer
5d1484fc26 infra: safeguard dent list checking 2020-09-15 18:16:07 +02:00
Thomas Schoebel-Theuer
eb6e3dc20d infra: dent order statistics 2020-09-15 18:16:07 +02:00
Thomas Schoebel-Theuer
9e3faf159c infra: better dent statistics 2020-09-15 18:16:07 +02:00
Thomas Schoebel-Theuer
23b8ef7aa7 main: fix race on mars_global 2020-09-15 18:14:50 +02:00
Thomas Schoebel-Theuer
adaecce4c8 infra: safeguard free_mars_global 2020-09-15 18:05:54 +02:00
Thomas Schoebel-Theuer
efbb44cf4b all: earlier rot destruction 2020-09-15 18:05:47 +02:00
Thomas Schoebel-Theuer
f9f2a421b8 infra: safeguard dents at _op_remove 2020-09-15 11:11:49 +02:00
Thomas Schoebel-Theuer
b0f8b3800f main: add d_count for long-lasting references 2020-09-15 11:11:49 +02:00
Thomas Schoebel-Theuer
2231b50d04 infra: fix mapfree use-after-free 2020-09-15 03:18:17 +02:00
Thomas Schoebel-Theuer
49b69cd723 main: reduce mars_find_dent searching at make_sync 2020-09-08 11:34:40 +02:00
Thomas Schoebel-Theuer
ab60fbdf4e main: reduce mars_find_dent searching further 2020-09-08 11:34:40 +02:00
Thomas Schoebel-Theuer
963d656f26 main: reduce mars_find_dent searching at switches 2020-09-08 11:34:40 +02:00
Thomas Schoebel-Theuer
f1efb0604e infra: improved scalability of mapfree infrastructure 2020-09-08 11:00:36 +02:00
Thomas Schoebel-Theuer
f770728c72 infra: fix replacement of .deleted links with files 2020-09-08 10:32:38 +02:00
Thomas Schoebel-Theuer
1bc326ec4f main: only active peers shall count for usable features 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
1c3468985a infra: increase hash table 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
7f65652f74 infra: better hash distribution 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
3b3801d23a infra: speed up fuzzy hashing algorithm 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
d60326ca42 infra: earlier stop searching in unordered list part 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
b63c7f13cf infra: improved dent debugging 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
7935ac1037 main: remove obsolete variable 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
b9964cd6c6 infra: skip non-member dents and subtrees 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
9828207c62 infra: factor out _reconnect_dent() 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
c500183177 server: precise thread naming 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
c575f28fbe infra: fix IOPS and other computations 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
1238dcaf64 if: improve accuracy of IOPS computation 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
e59056860f bio: show and compute total_* statistics only when debugging 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
aed4daef78 main: initial symlink update after push 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
575c4d49b3 main: fix alivelink retrieval for inconsistent updates 2020-09-01 19:34:16 +02:00
Thomas Schoebel-Theuer
2720850215 infra: fix digest availability 2020-08-30 17:25:07 +02:00
Thomas Schoebel-Theuer
166f166f3f main: safeguard parent pointers 2020-08-12 08:56:47 +02:00
Thomas Schoebel-Theuer
bf682f1273 all: minimum link update frequency, default 10s
Otherwise sysadmins might draw the wrong conclusion that something
might be hanging, instead of taking just a long time.
2020-08-12 08:56:29 +02:00
Thomas Schoebel-Theuer
27d3e9ff9b net: use IP_FREEBIND for server sockets 2020-08-11 09:17:52 +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
2e5b093657 main: safeguard potential race 2020-08-11 09:17:51 +02:00
Thomas Schoebel-Theuer
aff7bab0cc main: fix race on exceptional secondary repair 2020-08-11 09:17:51 +02:00
Thomas Schoebel-Theuer
1d90b97db2 logger: fix race on replay_code 2020-08-11 09:17:51 +02:00
Thomas Schoebel-Theuer
71d8a9ecce main: do not report additional connections 2020-08-02 13:21:28 +02:00
Thomas Schoebel-Theuer
769f325f25 main: fix activation of additional connections 2020-08-02 13:21:28 +02:00
Thomas Schoebel-Theuer
bc8ff9048c main: new scalable alivelinks 2020-08-02 12:10:20 +02:00
Thomas Schoebel-Theuer
eb1cb08791 main: fix fetch of dirs 2020-08-02 10:58:03 +02:00
Thomas Schoebel-Theuer
d24c57e50a all: bump features version 2020-08-02 10:56:17 +02:00
Thomas Schoebel-Theuer
2132853194 if: show and compute total_* statistics only when debugging 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
6f21da8cec if: better statistics 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
3367e483a0 if: reduce fly_count atomic_t statistics 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
dbc19ad904 main: report last completion stamp 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
2b7e4587b7 if: remember last completion timestamp 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
c1df8e7c84 infra: skip any backup subdirectories 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
fb6ed4aebe main: safeguard delete-resource 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
3fb3ce9c8e infra: retry creation on -ELOOP 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
a5576d5ad3 sio: do not follow symlinks 2020-07-31 09:26:20 +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
ee4258ccfc main: allow modprobe when uuid is missing 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
987154052f main: allow exceptional fresh uuid communication 2020-07-31 09:26:19 +02:00
Thomas Schoebel-Theuer
ff79d8b30d main: deny modprobe when /mars is no mountpoint 2020-07-31 09:26:19 +02:00
Thomas Schoebel-Theuer
6d9ffefb84 infra: new helper mars_is_mountpoint() 2020-07-31 09:26:16 +02:00
Thomas Schoebel-Theuer
7467aa9939 infra: allow pushing links to peers 2020-07-24 22:42:46 +02:00
Thomas Schoebel-Theuer
8d9ac84b46 infra: extend cmds with 2 strings 2020-07-20 21:20:47 +02:00
Thomas Schoebel-Theuer
8946873739 infra: new trigger code conventions 2020-07-20 21:20:09 +02:00
Thomas Schoebel-Theuer
1fdb12179d main: only report true replay errors 2020-07-20 09:45:12 +02:00
Thomas Schoebel-Theuer
cc12a051d2 main: allow propagation of foreign device-* 2020-07-16 06:40:40 +02:00
Thomas Schoebel-Theuer
a751ec7c42 infra: fix default tree recursion depth 2020-07-16 06:39:51 +02:00
Thomas Schoebel-Theuer
9c63bf0a38 infra: fix missing get_inode() 2020-07-16 06:39:32 +02:00
Thomas Schoebel-Theuer
229a0836d2 main: improve crash recovery for secondary
Primary and secondary should use the same
correction method.
2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
53090ead3d main: exceptional repair status 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
bd6604f8ce main: fix race between primary and secondary roles 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
c31efa006a main: wait until logger fully stopped before starting again 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
be5e9aa5ae main: fix recovery resync 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
f6335e4625 main: safeguard more pointers 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
76e0dfba07 main: better crash debugging 2020-07-11 09:56:33 +02:00
Thomas Schoebel-Theuer
64a915aafb main: fix detach corner case 2020-07-08 22:14:15 +02:00
Thomas Schoebel-Theuer
3afad273fd infra: also send prot level over dents 2020-07-08 22:14:03 +02:00
Thomas Schoebel-Theuer
e02bd88349 infra: fix proto_level conditions 2020-07-08 22:10:08 +02:00
Thomas Schoebel-Theuer
48a72c6bb4 infra: bump MARS_PROTO_LEVEL for dent proto compatibility 2020-07-08 21:22:04 +02:00
Thomas Schoebel-Theuer
5071b3d0b2 infra: remember Lamport stamp of remote link tree 2020-07-08 21:09:39 +02:00
Thomas Schoebel-Theuer
e551b6d89f infra: make Lamport exchange more generic 2020-07-08 21:09:39 +02:00
Thomas Schoebel-Theuer
8a062ee2db infra: fix io_timeout of copy bricks 2020-07-08 21:09:39 +02:00
Thomas Schoebel-Theuer
ea4fbc1885 all: remove superfluous dealloc tests and clears 2020-07-08 21:00:05 +02:00
Thomas Schoebel-Theuer
ceebaf04e5 infra: safeguard double free 2020-07-08 21:00:05 +02:00
Thomas Schoebel-Theuer
92df0da748 infra: fix NULL deref on empty dents 2020-07-05 09:32:23 +02:00
Thomas Schoebel-Theuer
dc9324a7a6 if: do not report IO errors at bio level 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
513560af8b infra: strengthen trigger semantics 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
a698f42f24 main: remote trigger when logger stops 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
16b5209a0d main: immediately fetch next logfile 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
97394a9336 infra: use cond_resched() 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
f7dbb5c0d0 server: replace spinlock with mutex 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
37da08d6a4 server: new thread naming conventions 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
6d4ba66d55 infra: remove obsolete show_status() 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
fc33aada95 main: simplify _show_actual 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
29ef7aef12 main: remove deprecated _show_status_all() 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
9bad724f50 infra: power override only for on transition 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
3b87d70162 main: keep bio brick when logger exists 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
35ca2b9f76 client: fix error path 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
a7fd123dd6 client: make statistics accessible via brick instance 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
101a0d7b90 client: add socket_count reporting 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
e83aab57f7 infra: fix brick power override 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
4a7905cf8e server: safeguard double free 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
a8b91e2d8a net: fix decompression block-aligned allocation 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
f9c1c6f536 main: always recover versionlink at primary 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
e98b6692ff main: fix hanging recovery in corner cases 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
de01dc4d66 main: skip sequence checking during recovery 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
34f3dec11d main: fix logrotate link creation races 2020-06-30 21:07:06 +02:00
Thomas Schoebel-Theuer
d16278bb79 infra: auto-repair illegal link stamps too far in the future 2020-05-29 20:59:16 +02:00
Thomas Schoebel-Theuer
d0dcec57b1 net: suppress annoying error message 2020-05-17 07:38:23 +02:00
Thomas Schoebel-Theuer
ff4429708e infra: fix mem leak 2020-05-07 11:44:34 +02:00
Thomas Schoebel-Theuer
804e8c901c main: remove some dead code 2020-05-02 22:31:48 +02:00
Thomas Schoebel-Theuer
1e59e306a0 infra: constify digest data param 2020-05-02 22:31:48 +02:00
Thomas Schoebel-Theuer
81ef3c2d77 main: secondary follows damaged primary when possible 2020-05-02 22:31:48 +02:00
Thomas Schoebel-Theuer
a9366c34c4 main: self-correct damaged versionlink at secondary 2020-05-01 11:16:10 +02:00
Thomas Schoebel-Theuer
00474b1307 main: allow versionlink recovery for secondaries 2020-05-01 11:14:44 +02:00
Thomas Schoebel-Theuer
df6a5edaac main: show if error code 2020-04-13 11:24:02 +02:00
Thomas Schoebel-Theuer
1c6a89f70b if: report error codes 2020-04-13 11:24:02 +02:00
Thomas Schoebel-Theuer
0523705eb6 main: report flying requests at if 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
c2fed92879 main: show rate statistics on if 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
ec8cfc0239 if: compute rate statistics 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
628c636dff all: distinguish *_ops_* from *_amount_* at limiter 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
b5209337a9 main: factor out open_count statistics 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
873421b7f2 if: factor out bio_endio adaptations 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
6e760727c4 all: bump features version 2020-04-13 11:21:17 +02:00
Thomas Schoebel-Theuer
3269cb8482 logger: fix scan beyond EOF after truncated logfile 2020-04-13 11:21:17 +02:00
Thomas Schoebel-Theuer
8a86c08750 net: correct error message 2020-04-13 11:21:17 +02:00
Thomas Schoebel-Theuer
ffcc691efd server: enable callback compression 2020-04-13 11:21:17 +02:00
Thomas Schoebel-Theuer
8a1b745d4f client: enable compressions 2020-04-13 11:21:17 +02:00
Thomas Schoebel-Theuer
95883b055c infra: allow transport compression 2020-04-13 11:21:17 +02:00
Thomas Schoebel-Theuer
66d6659462 net: simplify mars_recv_cb() 2020-04-13 11:21:16 +02:00
Thomas Schoebel-Theuer
4256cc17a1 net: simplify mref sending 2020-04-13 11:21:16 +02:00
Thomas Schoebel-Theuer
bcf006ab21 infra: add zlib compression 2020-04-13 11:21:16 +02:00
Thomas Schoebel-Theuer
6e55a6da95 infra: exploit new lz4 interface 2020-04-13 11:21:16 +02:00
Thomas Schoebel-Theuer
8daeadb061 infra: add LZ4 compression 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
a4221ada11 infra: add LZO compression 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
3d06881801 infra: prepare compressed logfiles 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
375ae7c84b infra: add compression infrastructure 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
2d35812d50 main: allow disabling of digests 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
e938add256 main: compute worst features version in cluster 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
fb719db887 infra: report available features and digests 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
1ebf6852be main: update some links lazily 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
e78d726a70 infra: allow lazy alivelink updates 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
692cb442c8 infra: separate feature version for strategy layer 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
6f1e8f46b3 infra: stringify feature version 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
6f3f46249e infra: allow sha1 algorithm 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
3812467c32 infra: allow crc32{,c} algorithms 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
ad2a644081 infra: new longer MD5 checksums 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
e9cc594b69 infra: flexible mref_checksum 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
49775c05ca log: prepare folding of longer digests 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
e243706eb1 log: remove unused l_written 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
c7f5451501 infra: prepare multiple digests 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
b448929f22 infra: increase digest size to 32 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
244b302ac0 infra: constify mars_digest_size 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
79b55514fc copy: stop upon short read 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
48c53bbe47 infra: account for truncated files 2020-04-13 10:54:19 +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
56699c6bfb sio: fix KASAN use-after-free 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
9e6fb4120c infra: deprecate ref_cs_mode 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
4501b80921 infra: categorize ref_initialized 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
af89dba044 infra: prepare simplification of flags 2020-04-13 10:54:18 +02:00
Thomas Schoebel-Theuer
00834a2370 infra: introduce temporary bounce buffers 2020-04-13 10:54:18 +02:00
Thomas Schoebel-Theuer
3029876200 infra: de-inline log_scan() 2020-04-13 10:54:18 +02:00
Thomas Schoebel-Theuer
11358d0279 infra: disable say_logging by default 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
bef8f30ab1 main: further reduce brick list traversals 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
19d20567fd all: reduce brick list traversals 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
343670b52d infra: remove superfluous parameter 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
333760bc1a infra: simplify mars_kill_brick_when_possible() 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
a03d9dbad4 main: treat running sync as attached 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
08c415130f main: create d_subtree when appropriate 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
732cb14d83 infra: allow recursion on deletion pass 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
cd3ceaccdc infra: allow recursion on backward pass 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
54a22959e5 infra: allow recursion on forward pass 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
59c9cedeeb infra: prepare subtree creation 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
5e97d05ecb infra: introduce and obey d_subtree 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
52fe09c3ca infra: remove obsolete d_global 2020-04-13 10:52:38 +02:00
Thomas Schoebel-Theuer
c9f7eebe24 infra: tune global hash 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
e8238cb018 main: make mars_global fully dynamic 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
8c94a285bf main: reduce peer_thread stack frame size 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
2d9cab0461 server: reduce handler stack frame size 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
24484a8749 server: reduce server stack frame size 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
aed146691a infra: add constructor for mars_global 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
21b4874e30 infra: make dent protocol extensible 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
131b28e377 infra: introduce common_proto_level 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
593ca2bb8f infra: allow mixed network protocol levels 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
0c5b5daa38 infra: {send,recv}ing mars_cmd via wrapper 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
381b6489f6 main: split peer_thread code 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
cce2e21c08 infra: fix potential overflow in timeout return 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
1cd77abe6d infra: re-trigger during brick deconstruction 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
2cbd00d45f main: trigger at flipping 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
1ff98125df main: trigger after peer connection is established 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
794b49b976 main: full trigger when logrotate possible 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
7c454390e9 client: trigger after network shutdown or failure 2020-04-13 09:55:19 +02:00
Thomas Schoebel-Theuer
0268b3b6b9 infra: always deliver .deleted to remote 2020-04-13 09:22:19 +02:00
Thomas Schoebel-Theuer
96561ba0d3 main: userspace control for compat_deletions 2020-04-08 20:39:38 +02:00
Thomas Schoebel-Theuer
780cb41f1f infra: only warn on bad readlink 2020-04-08 20:39:38 +02:00
Thomas Schoebel-Theuer
b3fb3d3731 infra: obey MARS_DELETED_STR otherwise 2020-04-08 20:39:38 +02:00
Thomas Schoebel-Theuer
7d6bdf945f infra: new Lamport ordering method 2020-04-08 03:32:40 +02:00
Thomas Schoebel-Theuer
722d99487f all: remove unnecessary uid 2020-04-08 03:32:36 +02:00
Thomas Schoebel-Theuer
37348ba2c8 infra: allow ordered symlink creation 2020-04-08 03:32:34 +02:00
Thomas Schoebel-Theuer
570a429c73 main: obey DELETED_STR for non-existing targets 2020-04-08 03:32:26 +02:00
Thomas Schoebel-Theuer
e4a83b9461 infra: introduce ordered_readlink() 2020-04-06 15:14:11 +02:00
Thomas Schoebel-Theuer
2a19a82319 infra: small cleanup 2020-04-01 06:12:28 +02:00
Thomas Schoebel-Theuer
8097fe2971 infra: separate dent list retrieval for remote communication 2020-04-01 06:12:28 +02:00
Thomas Schoebel-Theuer
44ad0068cc infra: allow partially ordered dent lists 2020-04-01 06:12:28 +02:00
Thomas Schoebel-Theuer
29060936ed infra: safeguard interim removal 2020-03-28 13:10:02 +01:00
Thomas Schoebel-Theuer
c4b79885d1 infra: factor out tree scanning 2020-03-28 13:10:02 +01:00
Thomas Schoebel-Theuer
64e7f91474 infra: factor out backward pass 2020-03-28 13:10:01 +01:00
Thomas Schoebel-Theuer
d0aa3fa27b infra: factor out forward pass 2020-03-28 13:10:01 +01:00
Thomas Schoebel-Theuer
b32f01fbb3 infra: factor out removal phase code 2020-03-28 13:10:01 +01:00
Thomas Schoebel-Theuer
aa70e4e8c9 infra: factor out prep phase code 2020-03-28 13:10:01 +01:00
Thomas Schoebel-Theuer
628d564077 infra: split filler code 2020-03-28 13:10:01 +01:00
Thomas Schoebel-Theuer
3ab97f26b5 infra: allow fetching full dent info from peers 2020-03-26 20:16:39 +01:00
Thomas Schoebel-Theuer
5b8c0d50a3 main: allow primary --force for shortened logfiles 2020-03-26 20:16:39 +01:00
Thomas Schoebel-Theuer
83098ffe24 main: avoid races on remote time updates 2020-03-26 20:15:35 +01:00
Thomas Schoebel-Theuer
1d0f554d46 main: fix potential use-after-free race on replaylink 2020-03-05 21:31:16 +01:00
Thomas Schoebel-Theuer
de036d0b52 main: try to repair even old logfiles 2020-02-28 09:41:05 +01:00
Thomas Schoebel-Theuer
57612397c2 main: allow NULL argument of helper function 2020-02-28 09:41:05 +01:00
Thomas Schoebel-Theuer
acae344ccf main: try to self-repair damaged logfiles 2020-02-28 09:41:05 +01:00
Thomas Schoebel-Theuer
f1d7caedfe copy: improve trigger 2020-02-10 09:35:29 +01:00
Thomas Schoebel-Theuer
506f57d04b logger: improve trigger 2020-02-10 09:35:29 +01:00
Thomas Schoebel-Theuer
41db4c33b4 infra: fix build with some old kernels 2020-01-31 08:07:12 +01:00
Thomas Schoebel-Theuer
fca091e087 aio: self-tune aio_max_nr when possible 2020-01-31 08:07:12 +01:00