zephyr/include/sys
Krzysztof Chruscinski 58942f3f13 lib: os: ring_buffer: Fix race condition
Ring buffer claims that no synchronization is needed
when there is a single producer and single consumer.
However, recent changes have broken that promise since
indexes rewind mechanism was modifing head and tail
when consuming. Patch fixes that by spliting rewinding
of indexes so that producer rewinds tail only and
consumer rewinds head.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2021-08-17 19:52:08 +02:00
..
__assert.h
arch_interface.h sys: arch_interface: fix doxygen groups 2021-05-21 12:17:04 -04:00
atomic_arch.h kernel: atomic: possibility of arch specific implementation 2021-05-03 11:57:46 +02:00
atomic_builtin.h kernel: atomic: consistently use named type for atomic pointer values 2021-04-19 15:22:13 +02:00
atomic_c.h kernel: atomic: consistently use named type for atomic pointer values 2021-04-19 15:22:13 +02:00
atomic.h kernel: atomic: possibility of arch specific implementation 2021-05-03 11:57:46 +02:00
base64.h
bitarray.h sys: introduce bit arrays 2021-05-07 13:36:22 -04:00
byteorder.h
cbprintf_cxx.h lib: os: cbprintf: Add ARG_UNUSED to unused arguments 2021-05-20 08:23:31 -05:00
cbprintf_internal.h lib: os: cbprintf: Add support for conversion to fsc package 2021-07-27 14:50:45 +02:00
cbprintf.h lib: os: cbprintf: Add support for conversion to fsc package 2021-07-27 14:50:45 +02:00
check.h
crc.h lib: os: Introduce support for CRC32C algorithm 2021-03-02 14:08:30 +01:00
device_mmio.h devices: mark device MMIO declarations to boot/pinned sections 2021-05-10 16:00:43 -05:00
dlist.h doc: strcutures: use doxygen to reference functions 2021-04-15 14:04:05 -04:00
errno_private.h
fdtable.h net: socket: Add locking to prevent concurrent access 2021-04-15 07:16:51 -05:00
kobject.h toolchain: migrate iterable sections calls to the external API 2021-08-12 17:47:04 -04:00
libc-hooks.h ARC: LIB: MWDT: add stdout hooks, timespec header 2021-08-13 13:43:19 -05:00
list_gen.h
math_extras_impl.h
math_extras.h
mem_manage.h docs: Fix doxygen errors in include/sys/mem_manage.h 2021-05-28 11:30:51 -05:00
mpsc_packet.h lib: os: Add mpsc (multiple producer, single consumer) packet buffer 2021-04-19 10:59:23 -04:00
mpsc_pbuf.h tests: lib: Add test for mpsc_pbuf 2021-04-19 10:59:23 -04:00
mutex.h docs: Add missing retval for sys_mutex_unlock() 2021-03-10 05:42:06 -05:00
notify.h doc: doxygen: replace option alias with kconfig 2021-06-29 10:26:28 -04:00
onoff.h
p4wq.h toolchain: migrate iterable sections calls to the external API 2021-08-12 17:47:04 -04:00
printk.h sys: printk: Fix LOG2 printk support in cpp code 2021-06-29 11:33:21 -04:00
rb.h lib: rb: Use types that indicate size and signedness 2021-04-20 15:50:49 -04:00
reboot.h lib: os: add gcc noreturn attribute for sys_reboot 2021-08-13 07:32:51 -04:00
ring_buffer.h lib: os: ring_buffer: Fix race condition 2021-08-17 19:52:08 +02:00
sem.h toolchain: migrate iterable sections calls to the external API 2021-08-12 17:47:04 -04:00
sflist.h doc: group data structure docs and add doxygen linkage 2021-04-15 14:04:05 -04:00
slist.h doc: group data structure docs and add doxygen linkage 2021-04-15 14:04:05 -04:00
speculation.h
sys_heap.h kernel/arch: cleanup function definitions 2021-04-01 05:34:17 -04:00
sys_io.h
time_units.h include: sys: cast to the same size composite expression 2021-06-24 21:08:56 -04:00
timeutil.h
util_internal.h sys: util: Update implementation of loop macros 2021-02-28 16:46:44 -05:00
util_loops.h sys: util: Update implementation of loop macros 2021-02-28 16:46:44 -05:00
util_macro.h sys: util: Move BIT macros from util.h to util_macro.h 2021-07-27 17:59:23 -04:00
util.h sys: util: fix compilation with XCC 2021-08-12 09:17:14 -05:00