docs/user: clean up headings
This was a slightly duff format for rst, make it use proper headings.
Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-ID: <20250725154517.3523095-4-alex.bennee@linaro.org>
diff --git a/docs/user/main.rst b/docs/user/main.rst
index 9a1c604..b8ff203 100644
--- a/docs/user/main.rst
+++ b/docs/user/main.rst
@@ -17,28 +17,34 @@
QEMU user space emulation has the following notable features:
-**System call translation:**
- QEMU includes a generic system call translator. This means that the
- parameters of the system calls can be converted to fix endianness and
- 32/64-bit mismatches between hosts and targets. IOCTLs can be
- converted too.
+System call translation
+~~~~~~~~~~~~~~~~~~~~~~~
-**POSIX signal handling:**
- QEMU can redirect to the running program all signals coming from the
- host (such as ``SIGALRM``), as well as synthesize signals from
- virtual CPU exceptions (for example ``SIGFPE`` when the program
- executes a division by zero).
+QEMU includes a generic system call translator. This means that the
+parameters of the system calls can be converted to fix endianness
+and 32/64-bit mismatches between hosts and targets. IOCTLs can be
+converted too.
- QEMU relies on the host kernel to emulate most signal system calls,
- for example to emulate the signal mask. On Linux, QEMU supports both
- normal and real-time signals.
+POSIX signal handling
+~~~~~~~~~~~~~~~~~~~~~
-**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.
+QEMU can redirect to the running program all signals coming from the
+host (such as ``SIGALRM``), as well as synthesize signals from
+virtual CPU exceptions (for example ``SIGFPE`` when the program
+executes a division by zero).
+
+QEMU relies on the host kernel to emulate most signal system calls,
+for example to emulate the signal mask. On Linux, QEMU supports both
+normal and real-time signals.
+
+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.
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