Thomas Schoebel-Theuer
272b9d8e46
mem: improve pre-allocation
2023-05-23 10:19:23 +02:00
Thomas Schoebel-Theuer
21bb01cfbd
main: compute nr of locally needed resources
2023-05-23 10:19:23 +02:00
Thomas Schoebel-Theuer
da68981a3a
mem: remove superfluous parameter
2023-05-23 10:19:23 +02:00
Thomas Schoebel-Theuer
68621e26da
server: minimum SS_CONNECTED
2023-05-23 10:19:23 +02:00
Thomas Schoebel-Theuer
0856f56918
lib_log: remove unused variable
2023-05-23 10:19:23 +02:00
Thomas Schoebel-Theuer
0b6b45bfd9
lib_log: remove less used code
...
Do not spend resources on sophisticated but
expensive trials.
2023-05-23 10:19:23 +02:00
Thomas Schoebel-Theuer
02deb644b6
main: make is_alive time window configurable
2023-05-23 10:18:25 +02:00
Thomas Schoebel-Theuer
1e3df0f96c
log: tighten start_magic
2023-05-23 10:18:25 +02:00
Thomas Schoebel-Theuer
15009b1395
infra: remove unnecessary parameter
2023-04-05 13:58:08 +02:00
Andrea Gelmini
dd1e4e1323
Fix typos
...
[small adaptations by Thomas Schoebel-Theuer, and
some problems with LyX-specific file format fixed]
2023-04-05 13:30:38 +02:00
Thomas Schoebel-Theuer
c15a3f016d
server: use thhe new delegate_free
2023-03-22 08:56:30 +01:00
Thomas Schoebel-Theuer
57f9defdf9
brick: delegate_free
2023-03-20 09:10:24 +01:00
Thomas Schoebel-Theuer
0d1a1f627a
server: reduce handler_limit
2023-03-08 22:03:37 +01:00
Thomas Schoebel-Theuer
5f463ca2d5
server: remove historic dent_limit_sem
2023-03-08 22:03:37 +01:00
Thomas Schoebel-Theuer
1bbb7af74e
server: remove historic server_limit_sem
2023-03-08 22:03:37 +01:00
Thomas Schoebel-Theuer
ab19f81e53
server: earlier observe handler_limit
2023-03-08 22:02:38 +01:00
Thomas Schoebel-Theuer
0ef35060f4
server: safeguard smp_mb
2023-02-27 09:50:10 +01:00
Thomas Schoebel-Theuer
ee55f32605
brick: safeguard smp_mb and barrier
2023-02-27 09:50:10 +01:00
Thomas Schoebel-Theuer
c8841486bd
if: fix potential bio return status
2023-02-27 09:50:10 +01:00
Thomas Schoebel-Theuer
bc53f522a2
logger: correct interface style
2023-02-20 09:22:34 +01:00
Thomas Schoebel-Theuer
fe62187072
client: correct interface style
2023-02-20 09:22:34 +01:00
Thomas Schoebel-Theuer
da720955e4
sio: correct interface style
2023-02-20 09:22:34 +01:00
Thomas Schoebel-Theuer
3ff50b3bc5
aio: correct interface style
2023-02-20 09:22:34 +01:00
Thomas Schoebel-Theuer
f2e91d0755
bio: correct interface style
2023-02-20 09:22:34 +01:00
Thomas Schoebel-Theuer
3b1b98e686
net: correct interface adaptation
2023-02-20 09:22:34 +01:00
Thomas Schoebel-Theuer
b0509eb759
server: shutdown all handler sockets upon rmmod
2023-02-19 17:23:39 +01:00
Thomas Schoebel-Theuer
74a645fdd4
server: keep a list of all communicating bricks
...
Prepare the possibility for influencing the server bricks.
2023-02-19 17:23:39 +01:00
Thomas Schoebel-Theuer
5ed769c53b
server: move master socket
2023-02-19 17:23:39 +01:00
Thomas Schoebel-Theuer
eb7710dec3
server: forcibly shutdown main sockets on rmmod
2023-02-19 17:23:39 +01:00
Thomas Schoebel-Theuer
26311c611c
net: fix spelling of constants
...
The typo in mars_recv_raw() was equivalent to MSG_CONFIRM, which should
not imply a functional harm, but obviously any nonblocking
reads on sockets did not work as intended (by staying
a synchronous operation).
Two other potential typos now corrected, without causing a difference
in the resulting constant values.
Side note 1: kernel_connect() is documented in net/socket.c that the
spelling O_NONBLOCK is the right one.
Side note 2: kernel_accept() is documented in net/socket.c that the
spelling SOCK_NONBLOCK is the right one for this case.
However, this in turn is defined as equivalent to O_NONBLOCK
in include/linux/net.h (thus no real difference).
Overall: humans may be misleaded.
2023-02-19 17:23:39 +01:00
Thomas Schoebel-Theuer
0cc08ff7fd
flags: mask out unusable bits
2023-02-19 17:23:39 +01:00
Thomas Schoebel-Theuer
ce93aa3c70
flags: cleanup code and systemize
2023-02-19 17:23:39 +01:00
Thomas Schoebel-Theuer
9162870298
lib_log: safeguard crc flag interpretation
...
Ensure that unused flag bits cannot lead to unnecessary
retries, or to badly indexed bitvector access.
2023-02-19 17:23:39 +01:00
Thomas Schoebel-Theuer
41a70df130
main: fix init order of memory debugging
2023-02-19 17:22:10 +01:00
Thomas Schoebel-Theuer
1f0b969e2b
client: emsure channel rampup after response
2023-02-05 11:07:17 +01:00
Thomas Schoebel-Theuer
74321eee3c
client: rework channel states and transitions
2023-02-05 11:07:17 +01:00
Thomas Schoebel-Theuer
ba67e756a7
client: do not overlap startup of higher channels
2023-02-05 11:07:17 +01:00
Thomas Schoebel-Theuer
1b156ea855
client: improve thread naming
2023-02-05 11:07:17 +01:00
Thomas Schoebel-Theuer
127cbd6d86
client/server: add /proc/sys/mars/[cs]*_count
2023-02-05 11:07:17 +01:00
Thomas Schoebel-Theuer
7f876a1a82
server: separate flying reads and write counters
2023-02-05 11:07:09 +01:00
Thomas Schoebel-Theuer
e33ec25563
server: earlier disallow IO ops on unconnected bricks
...
Unconnected server bricks cannot work at the IO layer, but
are required for the strategy layer (in order to get strategic
information over the network even when IO is not yet possible).
Reflect this in the code, and report any potential communication
mischief as early as possible (safeguard).
Functional testing did not show a difference, but timing
behaviour should have improved.
2023-02-05 10:39:57 +01:00
Thomas Schoebel-Theuer
5ac3408e7e
main: report replay errors after a small delay
...
Otherwise temporrary / incomplete logs may lead to
unnecessary alerts in monitoring.
2023-01-18 18:41:22 +01:00
Thomas Schoebel-Theuer
27916f714a
server: improve CPU usage on slow throughput
...
Th problem is a distributed one, the scenario is very difficult to
reproduce, and would trigger massive occurence of false-positive test
results, and the classic yield() operation (as already implemented) is
not enough for a solution.
In a certain special case, give up the CPU via a linear backoff
algorithm. in order to prevent a plethora of followup effects, e.g. in
special situations like already happened OOM under a variety of hardware
and kernel configurations.
2023-01-18 18:41:22 +01:00
Thomas Schoebel-Theuer
e380aea93f
infra: make msleep_backoff() interruptible
2023-01-18 18:41:14 +01:00
Thomas Schoebel-Theuer
3c77a0fdf6
mem: separated compile of CONFIG_MARS_DEBUG_*
2022-12-21 08:56:33 +01:00
Thomas Schoebel-Theuer
8594d13d14
infra: move brick_say inclusion
2022-12-02 22:42:11 +01:00
Thomas Schoebel-Theuer
c45faff9d6
mem: silence build warning
2022-12-02 22:41:53 +01:00
Thomas Schoebel-Theuer
46af5a6d09
infra: remove obsolete LOCK_CHECK
2022-12-02 22:36:39 +01:00
Thomas Schoebel-Theuer
cce814ab23
main: compile without EXPORT_SYMBOL(min_free_kbytes)
2022-12-02 22:36:39 +01:00
Thomas Schoebel-Theuer
09412a052e
mem: silence annoying compiler warning
...
The compiler will optimize this away upon certain combinations of
Kconfig settings.
2022-12-02 22:17:36 +01:00