HomeFreeBSD

syscalls: normalize _exit(2) declerations

Description

syscalls: normalize _exit(2) declerations

exit(3) is implemented by the runtime and performs a number of shutdown
actions before ultimately calling _exit(2) to terminate the program. We
historically named the syscall table entry exit rather than _exit,
but this requires special handling in libc/libsys to cause the _exit
symbol to exist while implementing exit in libc.

Declare the syscall as _exit and flow that through the system.

Because syscall(SYS_exit, code) is fairly widely used, allow a
configured extra line in syscall.h to define SYS_exit to SYS__exit.

I've found no external uses of __sys_exit() so I've not bothered to
create a compatability version of this private symbol.

Reviewed by: imp, kib, emaste
Differential Revision: https://reviews.freebsd.org/D51672

Details

Provenance
brooksAuthored on Aug 8 2025, 9:30 AM
Reviewer
imp
Differential Revision
D51672: syscalls: normalize _exit(2) declerations
Parents
rGfd4cdc438b77: rtld: fix dependencies for rtld-libc
Branches
Unknown
Tags
Unknown