1
linux/arch/um
Anton Ivanov 612a8c8e0b um: vector: Replace locks guarding queue depth with atomics
UML vector drivers use ring buffer structures which map
preallocated skbs onto mmsg vectors for use with sendmmsg
and recvmmsg. They are designed around a single consumer,
single producer pattern allowing simultaneous enqueue and
dequeue.

Lock debugging with preemption showed possible races when
locking the queue depth. This patch addresses this by
removing extra locks, adding barriers and making queue
depth inc/dec and access atomic.

Signed-off-by: Anton Ivanov <anton.ivanov@cambridgegreys.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
2024-09-12 19:56:05 +02:00
..
configs um: Fix hostaudio build errors 2023-08-19 23:30:22 +02:00
drivers um: vector: Replace locks guarding queue depth with atomics 2024-09-12 19:56:05 +02:00
include This pull request contains the following changes for UML: 2024-07-25 12:33:08 -07:00
kernel um: register power-off handler 2024-07-04 12:03:20 +02:00
os-Linux um: remove variable stack array in os_rcv_fd_msg() 2024-09-12 19:51:26 +02:00
scripts um: prevent user code in modules 2023-04-20 23:06:38 +02:00
.gitignore um: gitignore: Add kernel/capflags.c 2021-12-21 21:22:43 +01:00
Kbuild um: use obj-y to descend into arch/um/*/ 2023-08-26 22:41:34 +02:00
Kconfig um: Enable preemption in UML 2024-07-03 17:10:43 +02:00
Kconfig.debug um: Disable CONFIG_GCOV with MODULES 2021-04-15 23:10:33 +02:00
Makefile um: Makefile: use bash from the environment 2024-04-22 22:17:29 +02:00
Makefile-os-Linux
Makefile-skas arch: um: Add Clang coverage support 2024-01-05 00:30:35 +01:00