lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150324184043.GC5677@pc.thejh.net>
Date:	Tue, 24 Mar 2015 19:40:43 +0100
From:	Jann Horn <jann@...jh.net>
To:	Kees Cook <keescook@...omium.org>
Cc:	Michael Kerrisk <mtk.manpages@...il.com>,
	linux-man <linux-man@...r.kernel.org>,
	LKML <linux-kernel@...r.kernel.org>,
	Andy Lutomirski <luto@...capital.net>,
	Will Drewry <wad@...omium.org>,
	"H. Peter Anvin" <hpa@...or.com>
Subject: [PATCH v2 2/2] syscall.2: add x32 ABI

[added H. Peter Anvin to CC for this patch because he
seems to have contributed large parts of the X32 code]

---
 man2/syscall.2 | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/man2/syscall.2 b/man2/syscall.2
index ef8f3cf..1f25255 100644
--- a/man2/syscall.2
+++ b/man2/syscall.2
@@ -170,12 +170,18 @@ s390	svc 0	r1	r2	See below
 s390x	svc 0	r1	r2	See below
 sparc/32	t 0x10	g1	o0
 sparc/64	t 0x6d	g1	o0
-x86_64	syscall	rax	rax
+x86_64	syscall	rax	rax	See below
+x32	syscall	rax	rax	See below
 .TE
 .PP
 For s390 and s390x, NR (the system call number)
 may be passed directly with "svc NR" if it is less than 256.
 
+The x32 ABI uses the same instruction as the x86_64 ABI and is used on
+the same processors. To differentiate between them, the bitmask
+.I __X32_SYSCALL_BIT
+is bitwise-ORed into the syscall number for syscalls under the x32 ABI.
+
 On a few architectures,
 a register is used to indicate simple boolean failure of the system call:
 ia64 uses
@@ -210,6 +216,7 @@ s390x       r2    r3    r4    r5    r6    r7    -
 sparc/32    o0    o1    o2    o3    o4    o5    -
 sparc/64    o0    o1    o2    o3    o4    o5    -
 x86_64      rdi   rsi   rdx   r10   r8    r9    -
+x32         rdi   rsi   rdx   r10   r8    r9    -
 .TE
 .PP
 The mips/o32 system call convention passes
-- 
2.1.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ