aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Bennée <alex.bennee@linaro.org>2025-07-25 16:45:08 +0100
committerAlex Bennée <alex.bennee@linaro.org>2025-07-26 23:04:35 +0100
commitf1f25eed03308f9f85770e0b6b911b6caf83c268 (patch)
tree429a0efccc253402966b8ae57b1181e08689c507
parentbd0eb9b0cdb69ce8eafa85258a564596eeb165b7 (diff)
downloadqemu-f1f25eed03308f9f85770e0b6b911b6caf83c268.zip
qemu-f1f25eed03308f9f85770e0b6b911b6caf83c268.tar.gz
qemu-f1f25eed03308f9f85770e0b6b911b6caf83c268.tar.bz2
docs/user: expand section on threading
Potentially too many weasel words when describing atomic and memory order issues. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-ID: <20250725154517.3523095-6-alex.bennee@linaro.org>
-rw-r--r--docs/user/main.rst12
1 files changed, 9 insertions, 3 deletions
diff --git a/docs/user/main.rst b/docs/user/main.rst
index 05de904..347bdfa 100644
--- a/docs/user/main.rst
+++ b/docs/user/main.rst
@@ -46,9 +46,15 @@ Threading
On Linux, QEMU can emulate the ``clone`` syscall and create a real
host thread (with a separate virtual CPU) for each emulated thread.
-Note that not all targets currently emulate atomic operations
-correctly. x86 and Arm use a global lock in order to preserve their
-semantics.
+However as QEMU relies on the system libc to call ``clone`` on its
+behalf we limit the flags accepted to those it uses. Specifically this
+means flags affecting namespaces (e.g. container runtimes) are not
+supported. QEMU user-mode processes can still be run inside containers
+though.
+
+While QEMU does its best to emulate atomic operations properly
+differences between the host and guest memory models can cause issues
+for software that makes assumptions about the memory model.
QEMU was conceived so that ultimately it can emulate itself. Although it
is not very useful, it is an important test to show the power of the