Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/sys/compat/freebsd32/syscalls.conf
39478 views
1
sysnames="freebsd32_syscalls.c"
2
sysproto="freebsd32_proto.h"
3
sysproto_h=_FREEBSD32_SYSPROTO_H_
4
syshdr="freebsd32_syscall.h"
5
syssw="freebsd32_sysent.c"
6
syscallprefix="FREEBSD32_SYS_"
7
switchname="freebsd32_sysent"
8
namesname="freebsd32_syscallnames"
9
systrace="freebsd32_systrace_args.c"
10
abi_flags="long_size|pointer_size|time_t_size|pair_64bit"
11
abi_func_prefix="freebsd32_"
12
abi_type_suffix="32"
13
abi_long="int32_t"
14
abi_u_long="uint32_t"
15
abi_semid_t="int32_t"
16
abi_size_t="uint32_t"
17
abi_ptr_array_t="uint32_t"
18
abi_headers="#include <compat/freebsd32/freebsd32_proto.h>"
19
20
#
21
# Variables below this line are exceptions to the ABI changes
22
# programmatically detected by sys/tools/syscalls. New system calls
23
# should not require an entry here in virtually all cases. New entries
24
# are almost certainly representative of badly designed interfaces.
25
#
26
27
# System calls that require freebsd32-specific handling:
28
# fcntl - need to sign extend arg unless it's a pointer
29
# ksem_init, ksem_open - XXX not required
30
# mprotect - i386 read-implies-exec
31
# msgsys, semsys, shmsys - some sub-syscalls require compat
32
# sigqueue - union sival requires special handing on big-endian
33
# sigreturn - struct osigcontext
34
# sysarch - always MD
35
# _umtx_lock _umtx_unlock _umtx_op - arguments require special handling
36
syscall_abi_change="fcntl ksem_init ksem_open mprotect msgsys semsys shmsys sigqueue sigreturn sysarch _umtx_lock _umtx_unlock _umtx_op"
37
38
# System calls that appear to require handling, but don't:
39
# aio_cancel - the aiocb pointer is just a virtual address
40
# thr_* - the lack of sign extension of long args is OK
41
# sctp_generic_* - iovec differences handled internally
42
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"
43
44
# OBSOL syscalls
45
# getkerninfo - obsolete and can't be implemented (kernel virtual addresses can't fit in 32-bits)
46
obsol="getkerninfo"
47
48
# Syscalls without implementations:
49
# __mac_* - should be implemented
50
# afs3_syscall - requires significant porting, probably doesn't make sense
51
# kldsym - can't be implemented (kernel virtual addresses can't fit in 32-bits)
52
# lgetfh - should be implemented
53
# nlm_syscall - requires significant porting, probably doesn't make sense
54
# nnpfs_syscall - requires significant porting, probably doesn't make sense
55
# ntp_gettime - should be implemented
56
# thr_create - was unimplemented and appears to be unnecessary
57
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 nfssvc nlm_syscall ntp_gettime lgetfh nnpfs_syscall thr_create"
58
59