1f199109fSPeter Wemmsysnames="freebsd32_syscalls.c" 2f199109fSPeter Wemmsysproto="freebsd32_proto.h" 3f199109fSPeter Wemmsysproto_h=_FREEBSD32_SYSPROTO_H_ 4f199109fSPeter Wemmsyshdr="freebsd32_syscall.h" 5f199109fSPeter Wemmsyssw="freebsd32_sysent.c" 6f199109fSPeter Wemmsyscallprefix="FREEBSD32_SYS_" 7f199109fSPeter Wemmswitchname="freebsd32_sysent" 8f199109fSPeter Wemmnamesname="freebsd32_syscallnames" 956ede107SAndriy Gaponsystrace="freebsd32_systrace_args.c" 10be67ea40SBrooks Davisabi_flags="long_size|pointer_size|time_t_size|pair_64bit" 115b1df300SBrooks Davisabi_func_prefix="freebsd32_" 12be67ea40SBrooks Davisabi_type_suffix="32" 13be67ea40SBrooks Davisabi_long="int32_t" 14be67ea40SBrooks Davisabi_u_long="uint32_t" 15be67ea40SBrooks Davisabi_semid_t="int32_t" 16be67ea40SBrooks Davisabi_size_t="uint32_t" 17be67ea40SBrooks Davisabi_ptr_array_t="uint32_t" 18be67ea40SBrooks Davisabi_headers="#include <compat/freebsd32/freebsd32_proto.h>" 19be67ea40SBrooks Davis 20be67ea40SBrooks Davis# 21*c0c1b1cdSJohn Baldwin# Variables below this line are exceptions to the ABI changes programmatically 22be67ea40SBrooks Davis# detected by makesyscalls.lua. New system calls should not require an entry 23be67ea40SBrooks Davis# here in nearly virtually all cases. New entries are almost certainly 24be67ea40SBrooks Davis# representative of badly designed interfaces. 25be67ea40SBrooks Davis# 26be67ea40SBrooks Davis 27be67ea40SBrooks Davis# System calls that require freebsd32-specific handling: 28be67ea40SBrooks Davis# fcntl - need to sign extend arg unless it's a pointer 29be67ea40SBrooks Davis# ksem_init, ksem_open - XXX not required 30be67ea40SBrooks Davis# mprotect - i386 read-implies-exec 31be67ea40SBrooks Davis# msgsys, semsys, shmsys - some sub-syscalls require compat 32be67ea40SBrooks Davis# sigqueue - union sival requires special handing on big-endian 33be67ea40SBrooks Davis# sigreturn - struct osigcontext 34be67ea40SBrooks Davis# sysarch - always MD 35be67ea40SBrooks Davis# _umtx_lock _umtx_unlock _umtx_op - arguments require special handling 36be67ea40SBrooks Davissyscall_abi_change="fcntl ksem_init ksem_open mprotect msgsys semsys shmsys sigqueue sigreturn sysarch _umtx_lock _umtx_unlock _umtx_op" 37be67ea40SBrooks Davis 38be67ea40SBrooks Davis# System calls that appear to require handling, but don't: 39be67ea40SBrooks Davis# aio_cancel - the aiocb pointer is just a virtual address 40be67ea40SBrooks Davis# thr_* - the lack of sign extension of long args is OK 41be67ea40SBrooks Davis# sctp_generic_* - iovec differences handled internally 42be67ea40SBrooks Davissyscall_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" 43be67ea40SBrooks Davis 44be67ea40SBrooks Davis# OBSOL syscalls 45be67ea40SBrooks Davis# getkerninfo - obsolete and can't be implemented (kernel virtual addresses can't fit in 32-bits) 46be67ea40SBrooks Davisobsol="getkerninfo" 47be67ea40SBrooks Davis 48be67ea40SBrooks Davis# Syscalls without implementations: 4930cdbb58SStephen J. Kiernan# __mac_* - should be implemented 50be67ea40SBrooks Davis# afs3_syscall - requires significant porting, probably doesn't make sense 51be67ea40SBrooks Davis# kldsym - can't be implemented (kernel virtual addresses can't fit in 32-bits) 52be67ea40SBrooks Davis# lgetfh - should be implemented 53be67ea40SBrooks Davis# nlm_syscall - requires significant porting, probably doesn't make sense 54be67ea40SBrooks Davis# nnpfs_syscall - requires significant porting, probably doesn't make sense 55be67ea40SBrooks Davis# ntp_gettime - should be implemented 56*c0c1b1cdSJohn Baldwin# thr_create - was unimplemented and appears to be unnecessary 5730cdbb58SStephen J. Kiernanunimpl="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