Thomas Schoebel-Theuer
6de8dc9639
trans_logger: remove broken queue depth limit
...
It wqas broken by concept: large requests from userspace max be
split into many mrefs. Thus a limit on units of #mrefs is not
comparable to userspace limits.
Instead, the ordinary nr_requests limits on kernel device queues
should suffice to get to the intended effect.
2013-04-02 15:35:13 +02:00
Thomas Schoebel-Theuer
da35c04afd
light: tell version number upon modprobe and rmmod
2013-03-13 17:16:58 +01:00
Thomas Schoebel-Theuer
79f7e6acd3
light: fix re-computation of todo_primary
2013-01-24 11:12:16 +01:00
Thomas Schoebel-Theuer
cd551926c6
infra: factor out mapfree infrastructure from aio
2013-01-23 20:07:02 +01:00
Thomas Schoebel-Theuer
806a62289c
infra: fix automatic killing on outputless bricks
2013-01-23 20:07:02 +01:00
Thomas Schoebel-Theuer
03803eeea4
server: fix races, completely separate server bricks from main bricks
2013-01-23 20:07:02 +01:00
Thomas Schoebel-Theuer
34dac0689b
infra: make killing of useless bricks selectable
2013-01-23 20:07:02 +01:00
Thomas Schoebel-Theuer
4cbd11372e
infra: make showing global statistics configurable
2013-01-23 20:07:02 +01:00
Thomas Schoebel-Theuer
62a3d791d1
light: enforce contiguity of logrotate numbers
2013-01-23 20:07:02 +01:00
Thomas Schoebel-Theuer
2271f55e8c
brick_say: make debug messages runtime-selectable
2013-01-23 20:07:02 +01:00
Thomas Schoebel-Theuer
a7e309cf4b
light: change versionlink delimiter to ':'
2013-01-23 20:07:01 +01:00
Thomas Schoebel-Theuer
9d491ae27c
all: use mapping_set_gfp_mask() everywhere
2013-01-23 20:07:01 +01:00
Thomas Schoebel-Theuer
769d606db6
light: speedup recognition of finished logfiles
2013-01-23 20:07:01 +01:00
Thomas Schoebel-Theuer
5cfd36618a
infra: fix lamport clock on stat()
2013-01-23 20:07:01 +01:00
Thomas Schoebel-Theuer
669a2d6f07
light: fix logrotate for primary
2013-01-23 20:07:01 +01:00
Thomas Schoebel-Theuer
e88e857ee9
light: show logfile name in versionlink
2013-01-23 20:07:01 +01:00
Thomas Schoebel-Theuer
7dcfe9aaf3
light: make mutual exclusion betwenn sync and logging more robust
2013-01-23 20:07:00 +01:00
Thomas Schoebel-Theuer
d233862916
light: disallow syncing old data over new one
2013-01-23 20:07:00 +01:00
Thomas Schoebel-Theuer
a103643d23
server: fix race on shutdown
2013-01-23 20:07:00 +01:00
Thomas Schoebel-Theuer
41d8af3f6d
light: trigger after remote copy has finished
2013-01-23 20:07:00 +01:00
Thomas Schoebel-Theuer
1160328832
light: call remote_trigger() only when necessary
2013-01-23 20:07:00 +01:00
Thomas Schoebel-Theuer
6b31a0265c
copy: disallow write overlapping by default
2013-01-23 20:07:00 +01:00
Thomas Schoebel-Theuer
f447ebea58
light: bump min_free_kbytes
2013-01-23 20:07:00 +01:00
Thomas Schoebel-Theuer
fb964fcc75
mem: pre-allocate only the necessary
2013-01-23 20:07:00 +01:00
Thomas Schoebel-Theuer
854e90b384
infra: qiet harmless race
2013-01-23 20:06:59 +01:00
Thomas Schoebel-Theuer
7cc5c12436
light: offload trans_logger from symlink update (deadlock prevention)
2013-01-23 20:06:59 +01:00
Thomas Schoebel-Theuer
a036a01188
light: fix logfile rotation
...
The old code had races, migitated by long timeouts.
The new code has strictly no dependencies from realtime.
2013-01-23 20:06:59 +01:00
Thomas Schoebel-Theuer
899b0a5743
trans_logger: fix potential race on old versionlink computation
2013-01-23 20:06:59 +01:00
Thomas Schoebel-Theuer
9692a33f33
aio: remove obsolete wait_during_fdsync
2013-01-23 20:06:59 +01:00
Thomas Schoebel-Theuer
db06f20a05
light: workaround race between remote deletion and local use
2013-01-23 20:06:59 +01:00
Thomas Schoebel-Theuer
531e4def99
infra: fix memleak when brick is not killable
2013-01-23 20:06:59 +01:00
Thomas Schoebel-Theuer
146101d034
lib_log: use standard chunk_size in log_read()
2013-01-23 20:06:59 +01:00
Thomas Schoebel-Theuer
4677514aab
light: immediately stop log replay upon rmmod
2013-01-23 20:06:58 +01:00
Thomas Schoebel-Theuer
0f9f2b404d
light: protect copy against concurrent logfile updates
2013-01-23 20:06:58 +01:00
Thomas Schoebel-Theuer
28d433cc81
trans_logger: fix potential race on log_input
...
During logrotate, there may exist writeback clusters
with mixed log_inputs. Each sub_mref now gets its individual
log_input inherited from the orig_mref. Add ref counting
to ensure that cleanup can never occur on an active log_input.
2013-01-23 20:06:57 +01:00
Thomas Schoebel-Theuer
ec69356a14
trans_logger: make completion_semantics configurable
2013-01-23 20:06:57 +01:00
Thomas Schoebel-Theuer
7b905f93ad
trans_logger: limit q0 length
2013-01-23 20:06:57 +01:00
Thomas Schoebel-Theuer
fa12becf00
trans_logger: add CRC checksumming of data
...
Off by default, since it may hurt performance.
2013-01-23 20:06:56 +01:00
Thomas Schoebel-Theuer
d9cbea66c2
aio: do mapfree_pages() via background thread
...
This is crucial for performance, since invalidate_mapping_pages()
may take a long time and consume a lot of CPU.
Decouple it from time-critical worker threads.
2013-01-23 20:06:56 +01:00
Thomas Schoebel-Theuer
ce41cdee2b
server: lockless dent shipping
2013-01-23 20:06:54 +01:00
Thomas Schoebel-Theuer
2d225065c8
light: use new lamport timestamp semantics
2013-01-23 20:06:54 +01:00
Thomas Schoebel-Theuer
f7b5369468
infra: automatic timestamps in mars_symlink()
2013-01-23 20:06:54 +01:00
Thomas Schoebel-Theuer
f7331fccf3
infra: fix readlink
2013-01-23 20:06:54 +01:00
Thomas Schoebel-Theuer
e108777ff8
light: new sematics of version links
2013-01-23 20:06:54 +01:00
Thomas Schoebel-Theuer
7a01e6a5a8
trans_logger: update symlinks via callback
2013-01-23 20:06:54 +01:00
Thomas Schoebel-Theuer
0ef119edd1
infra: intoduce brick_yield()
2013-01-23 20:06:54 +01:00
Thomas Schoebel-Theuer
7b998de219
infra: add mars_readlink()
2013-01-23 20:06:53 +01:00
Thomas Schoebel-Theuer
ab7766e829
infra: qiet harmless stat error
2013-01-23 20:06:53 +01:00
Thomas Schoebel-Theuer
2f74813ce6
light: fix opportunity for bad end_pos computation
2013-01-23 20:06:52 +01:00
Thomas Schoebel-Theuer
1a25b0c57a
light: fix hangs caused by bad replay links
2013-01-23 20:06:52 +01:00