1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-17 04:52:59 +01:00
RIOT/sys
Marian Buschsieweke 45c473d721
sys/vfs: use atomic_utils rather C11 atomics
This has the following advantages:

- faster and leaner when C11 atomics are not efficient (e.g. on LLVM
  this is almost always the case, as LLVM will only use efficient
  atomics if it doesn't has to bail out to library calls even for
  exotic things)
    - Even for GCC e.g. on the nucleo-f429zi this safes 72 B of .text
      for examples/filesystem despite runtime checks added for
      over- and underflow
- less pain in the ass for C++ and rust users, as both C++ and
  c2rust are incompatible with C11 atomics
- adds test for overflow of the open file counter for more robust
  operation
- adds `assumes()` so that underflows are detected in non-production
  code
2024-03-27 11:26:15 +01:00
..
analog_util
app_metadata makefiles, treewide: Remove MCU variable 2024-02-18 20:46:09 +01:00
arduino sys/arduino: move pseudo modules to makefiles 2023-06-28 09:09:31 +02:00
auto_init sys/psa_crypto: Build PSA Crypto functions based on module selection 2023-11-30 21:02:42 +01:00
base64
benchmark sys/benchmark: fix integer overflow in benchmark_print_time() 2023-10-13 18:19:41 +02:00
bhp
bitfield sys/bitfield: don't set unrelated bits in bf_{set, clear}_all() 2023-03-17 00:08:10 +01:00
bloom
bus
can sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
cb_mux
checksum Fletcher32: Add incremental API 2023-10-18 13:22:44 +02:00
chunked_ringbuffer
clif sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
coding sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
color sys/color: fix rgb2hsv function 2023-06-05 13:00:23 +02:00
congure sys/congure: move dependency resolution in its own Makefile.dep 2023-06-15 10:27:38 +02:00
cpp11-compat sys/cpp_new_delete: always enable the module when C++ is used 2024-02-07 11:40:23 +01:00
cpp_new_delete sys/cpp_new_delete: fix compilation with clang 2023-07-18 12:24:08 +02:00
crypto sys/psa_crypto: remove unused variable 2023-10-19 11:21:03 +02:00
cxx_ctor_guards
debug_irq_disable
div
ecc sys/ecc: model in Kconfig 2023-05-24 09:53:33 +02:00
eepreg sys/eepreg: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:46 +02:00
embunit sys/embunit: return failure state in TestRunner_end() 2024-03-04 14:30:45 +01:00
entropy_source sys/entropy_source: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:53 +02:00
event sys/event: add event_is_queued() 2023-10-06 18:21:34 +02:00
evtimer sys/evtimer: move dependency resolution in its own Makefile.dep 2023-06-15 10:27:37 +02:00
fido2 tree-wide: fix typos in doc and comments 2023-10-16 12:17:48 +02:00
fmt sys/fmt: don't include stdio_base.h 2024-02-09 15:31:21 +01:00
frac
fs sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
fuzzing
hashes sys/hashes: support for SHA-{384,512/{224,256}} 2024-03-25 12:35:10 +01:00
include sys/vfs: use atomic_utils rather C11 atomics 2024-03-27 11:26:15 +01:00
iolist
isrpipe sys/isrpipe: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:48 +02:00
libc sys/endian: move form sys/libc 2024-01-31 20:14:46 +01:00
log_color sys/log_color: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:50 +02:00
log_printfnoformat
luid sys/luid: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:49 +02:00
malloc_thread_safe sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
matstat
memarray sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
mineplex
net Merge pull request #20499 from benpicco/coap_build_hdr-const 2024-03-22 15:35:38 +00:00
newlib_syscalls_default sys/newlib_syscalls_default: fix race condition in __sinit() 2024-02-16 07:21:28 +01:00
od sys/od: increase the size of str_pos variable 2023-07-06 13:27:58 +02:00
oneway-malloc sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
phydat sys/phydat: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:52 +02:00
picolibc_syscalls_default
pipe sys/pipe: model in Kconfig 2023-05-24 09:53:35 +02:00
pm_layered sys/pm_layered: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:52 +02:00
posix sys: 64 bit compatibility 2024-01-17 16:05:12 +01:00
preprocessor
progress_bar
ps sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
psa_crypto sys/psa_crypto: Use PRIuSIZE in debug messages 2024-02-05 22:02:27 +01:00
puf_sram sys/puf_sram: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:54 +02:00
random sys/random/fortuna/fortuna.c:add error check of aes_encrypt() 2024-01-30 19:04:01 +01:00
riotboot sys/slot_aux: add build system integration for AUX slot 2024-02-28 11:49:05 +01:00
rtc_utils
rust_riotmodules
rust_riotmodules_standalone rust: Selectively update riot-wrappers 2024-03-20 16:00:08 +10:00
saul_reg sys/saul_reg: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:51 +02:00
sched_round_robin sys/sched_round_robin: move deps resolution in its own Makefile.dep 2023-06-15 10:24:51 +02:00
schedstatistics sys/schedstatistics: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:50 +02:00
sema sys/sema*: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:49 +02:00
sema_inv sys/sema*: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:49 +02:00
senml sys/senml: cleanup dependency resolution 2023-06-15 10:24:52 +02:00
seq
shell treewide: remove deprecated random_cmd module 2024-03-18 21:31:44 +01:00
shell_lock sys/shell_lock: fix compilation with llvm 2023-07-18 12:24:08 +02:00
slot_aux sys/slot_aux: add build system integration for AUX slot 2024-02-28 11:49:05 +01:00
ssp sys/ssp: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:47 +02:00
stdio sys/stdio: add common stdio module 2024-02-09 15:24:22 +01:00
stdio_nimble stdio_nimble: port to new interface 2024-02-09 15:24:22 +01:00
stdio_null stdio_null: port to new interface 2024-02-09 15:24:22 +01:00
stdio_rtt stdio_rtt: port to new interface 2024-02-09 15:24:22 +01:00
stdio_semihosting stdio_semihosting: port to new interface 2024-02-09 15:31:21 +01:00
stdio_uart stdio_uart: port to new interface 2024-02-09 15:24:22 +01:00
stdio_udp stdio_udp: port to new interface 2024-02-09 15:24:22 +01:00
suit sys/suit: introduce suit_worker_done_cb() 2024-01-08 20:39:12 +01:00
test_utils sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
timex
tiny_strerror sys/tiny_strerror: fix compilation on LLVM 2024-03-19 16:12:18 +01:00
trace sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
trickle sys/trickle: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:48 +02:00
tsrb
universal_address sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
uri_parser sys/uri_parser: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:57 +02:00
usb sys/usbus: answer get_status if request is standard type 2024-03-17 16:47:07 +01:00
usb_board_reset
ut_process sys: Use size_t print format specifier 2023-12-21 12:02:19 +01:00
uuid sys/uuid: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:56 +02:00
vfs sys/vfs: use atomic_utils rather C11 atomics 2024-03-27 11:26:15 +01:00
vfs_util sys/vfs*: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:54 +02:00
xtimer
zptr
ztimer sys: 64 bit compatibility 2024-01-17 16:05:12 +01:00
ztimer64 sys: 64 bit compatibility 2024-01-17 16:05:12 +01:00
doc.txt
Kconfig sys: Add PSA Crypto Module 2023-08-31 14:38:49 +02:00
Kconfig.newlib
Kconfig.picolibc pkg/tinyusb: sys: fix stdio buffered inclusion in Kconfig 2023-06-17 15:12:31 +02:00
Kconfig.stdio pkg/tinyusb: sys: fix stdio buffered inclusion in Kconfig 2023-06-17 15:12:31 +02:00
Makefile sys: Add PSA Crypto Module 2023-08-31 14:38:49 +02:00
Makefile.dep treewide: remove deprecated sha256sum module 2024-03-18 21:31:53 +01:00
Makefile.include sys/slot_aux: add build system integration for AUX slot 2024-02-28 11:49:05 +01:00