aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Kallus <benjamin.p.kallus.gr@dartmouth.edu>2025-05-18 19:45:07 -0400
committerAlejandro Colomar <alx@kernel.org>2025-05-22 14:32:31 +0200
commit125f3b3c3ee3b99f94e08214f610bde06a9bb754 (patch)
treead376d2ec0b2930bb9d3e4384709b03d0be69979
parentff69c843992d53a5a094b90cb6990069dec06cc0 (diff)
downloadman-pages-125f3b3c3ee3b99f94e08214f610bde06a9bb754.tar.gz
man/man2/syscall.2: x86-64 + x32 syscall numbers go in eax
The kernel sign-extends eax before dispatching syscalls. From arch/x86/entry/entry_64.S: > movslq %eax, %rsi > IBRS_ENTER > UNTRAIN_RET > CLEAR_BRANCH_HISTORY > > call do_syscall_64 /* returns with IRQs disabled */ This patch updates syscall.2 to document this. ARM64 exhibits a similar behavior (w8 is extended), which is already documented. Signed-off-by: Ben Kallus <benjamin.p.kallus.gr@dartmouth.edu> Message-ID: <20250518234507.404608-1-benjamin.p.kallus.gr@dartmouth.edu> Signed-off-by: Alejandro Colomar <alx@kernel.org>
-rw-r--r--man/man2/syscall.24
1 files changed, 2 insertions, 2 deletions
diff --git a/man/man2/syscall.2 b/man/man2/syscall.2
index f50d7cfc7b..be645c0f4a 100644
--- a/man/man2/syscall.2
+++ b/man/man2/syscall.2
@@ -190,8 +190,8 @@ superh trapa #31 r3 r0 r1 - 4, 6
sparc/32 t 0x10 g1 o0 o1 psr/csr 1, 6
sparc/64 t 0x6d g1 o0 o1 psr/csr 1, 6
tile swint1 R10 R00 - R01 1
-x86-64 syscall rax rax rdx - 5
-x32 syscall rax rax rdx - 5
+x86-64 syscall eax rax rdx - 5
+x32 syscall eax rax rdx - 5
xtensa syscall a2 a2 - -
.TE
.P