-
Juan David González Cobas authored
To make libertm thread-safe, calls to ertm_proto_cycle must be completed in an atomic manner, ensuring that the serial link to the wrpc is used in an exclusive manner by each client thread. There is only one exception to this rule, and a crucial one: there are separate operations for sending config values to the wrpc, and for committing the sent values. The doublet of the two calls to set_board_config and commit_board_config, which are called only in one place and always in sequence, must be atomic in its entirety, which is most simply achieved by defining a larger critical section in update_board_config. This is ugly, but the shortest path to fully atomic operations from the way the code was originally organized.
29fffc60
Name |
Last commit
|
Last update |
---|---|---|
arch/lm32 | ||
boards | ||
configs | ||
dev | ||
doc | ||
host | ||
include | ||
ipc | ||
lib | ||
libertm | ||
liblinux | ||
monitor | ||
pp_printf | ||
ppsi @ f5d69067 | ||
scripts | ||
sdb-lib | ||
shell | ||
softpll | ||
test/snmp | ||
tools | ||
ual @ e3abe4c0 | ||
.gitignore | ||
.gitmodules | ||
COPYING | ||
Kconfig | ||
MAKEALL | ||
Makefile | ||
Makefile.kconfig | ||
check-error.c | ||
compare_size.sh | ||
dump-info.c | ||
revision.c | ||
save_size.sh | ||
system_checks.c | ||
wrc_main.c | ||
wrc_main_sim.c |