1 # $FreeBSD$
2 sysnames="freebsd32_syscalls.c"
3 sysproto="freebsd32_proto.h"
4 sysproto_h=_FREEBSD32_SYSPROTO_H_
5 syshdr="freebsd32_syscall.h"
6 syssw="freebsd32_sysent.c"
7 sysmk="/dev/null"
8 syscallprefix="FREEBSD32_SYS_"
9 switchname="freebsd32_sysent"
10 namesname="freebsd32_syscallnames"
11 systrace="freebsd32_systrace_args.c"
12 abi_flags="long_size|pointer_size|time_t_size|pair_64bit"
13 abi_func_prefix="freebsd32_"
14 abi_type_suffix="32"
15 abi_long="int32_t"
16 abi_u_long="uint32_t"
17 abi_semid_t="int32_t"
18 abi_size_t="uint32_t"
19 abi_ptr_array_t="uint32_t"
20 abi_headers="#include <compat/freebsd32/freebsd32_proto.h>"
21
22 #
23 # Variables below this line are exceptions to the ABI changes programatically
24 # detected by makesyscalls.lua. New system calls should not require an entry
25 # here in nearly virtually all cases. New entries are almost certainly
26 # representative of badly designed interfaces.
27 #
28
29 # System calls that require freebsd32-specific handling:
30 # fcntl - need to sign extend arg unless it's a pointer
31 # ksem_init, ksem_open - XXX not required
32 # mprotect - i386 read-implies-exec
33 # msgsys, semsys, shmsys - some sub-syscalls require compat
34 # sigqueue - union sival requires special handing on big-endian
35 # sigreturn - struct osigcontext
36 # sysarch - always MD
37 # _umtx_lock _umtx_unlock _umtx_op - arguments require special handling
38 syscall_abi_change="fcntl ksem_init ksem_open mprotect msgsys semsys shmsys sigqueue sigreturn sysarch _umtx_lock _umtx_unlock _umtx_op"
39
40 # System calls that appear to require handling, but don't:
41 # aio_cancel - the aiocb pointer is just a virtual address
42 # thr_* - the lack of sign extension of long args is OK
43 # sctp_generic_* - iovec differences handled internally
44 syscall_no_abi_change="aio_cancel thr_exit thr_kill thr_kill2 thr_self thr_set_name thr_wake sctp_generic_sendmsg_iov sctp_generic_recvmsg"
45
46 # OBSOL syscalls
47 # getkerninfo - obsolete and can't be implemented (kernel virtual addresses can't fit in 32-bits)
48 obsol="getkerninfo"
49
50 # Syscalls without implementations:
51 # *mac_* - should be implemented
52 # afs3_syscall - requires significant porting, probably doesn't make sense
53 # kldsym - can't be implemented (kernel virtual addresses can't fit in 32-bits)
54 # lgetfh - should be implemented
55 # nlm_syscall - requires significant porting, probably doesn't make sense
56 # nnpfs_syscall - requires significant porting, probably doesn't make sense
57 # ntp_gettime - should be implemented
58 # thr_create - was unimplemented and appears to be unnecessicary
59 unimpl="afs3_syscall kldsym __mac_get_proc __mac_set_proc __mac_get_fd __mac_get_file __mac_set_fd __mac_set_file __mac_get_pid __mac_get_link __mac_set_link __mac_execve mac_syscall nfssvc nlm_syscall ntp_gettime lgetfh nnpfs_syscall thr_create"
Cache object: b165c84a0fb9cd546f4da9baa9b5c6ff
|