Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/lib/libc/sys Explain why we don't want to pass structs and u...
details: https://anonhg.NetBSD.org/src/rev/e8f7f7c89082
branches: trunk
changeset: 481456:e8f7f7c89082
user: christos <christos%NetBSD.org@localhost>
date: Mon Jan 31 15:15:07 2000 +0000
description:
Explain why we don't want to pass structs and unions to syscalls, and
how to find the proper args for a syscall.
diffstat:
lib/libc/sys/syscall.2 | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diffs (25 lines):
diff -r f97935c64f75 -r e8f7f7c89082 lib/libc/sys/syscall.2
--- a/lib/libc/sys/syscall.2 Mon Jan 31 15:14:19 2000 +0000
+++ b/lib/libc/sys/syscall.2 Mon Jan 31 15:15:07 2000 +0000
@@ -1,4 +1,4 @@
-.\" $NetBSD: syscall.2,v 1.8 1999/12/02 21:42:40 kleink Exp $
+.\" $NetBSD: syscall.2,v 1.9 2000/01/31 15:15:07 christos Exp $
.\"
.\" Copyright (c) 1980, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
@@ -73,6 +73,15 @@
There is no way to simulate system calls that have multiple return values
such as
.Xr pipe 2 .
+.Pp
+Due to ABI implementation differences in passing struct or union
+type arguments to system calls between different processors, all
+system calls pass instead pointers to such structs or unions, even
+when the documentation of the system call mentions otherwise. The
+conversion between passing structs and unions is handled normally
+via userland stubs. The correct arguments for the kernel entry
+points for each system call can be found in the header file
+.Ao Pa sys/syscallargs.h Ac
.Sh HISTORY
The
.Fn syscall
Home |
Main Index |
Thread Index |
Old Index