Page MenuHomeFreeBSD

syscall(2): make i386 less of an outlier
ClosedPublic

Authored by brooks on Mar 5 2024, 9:49 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Jan 14, 11:45 AM
Unknown Object (File)
Dec 18 2025, 5:46 PM
Unknown Object (File)
Dec 15 2025, 11:09 AM
Unknown Object (File)
Dec 6 2025, 3:44 PM
Unknown Object (File)
Nov 30 2025, 9:52 PM
Unknown Object (File)
Nov 28 2025, 3:38 PM
Unknown Object (File)
Nov 24 2025, 6:50 AM
Unknown Object (File)
Nov 22 2025, 6:07 PM
Subscribers

Details

Summary

Unlike other architectures, i386 only defined syscall() and not
_syscall() or sys_syscall(). The syscall() function then invoked the
desired system call directly rather than invoking syscall(2). Keep the
latter as it's marginally more efficent, but also create the
conventional _syscall() and
sys_syscall() stubs.

This avoids the need to special case syscall(2) in the symbol list
generation in libsys.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 56459
Build 53347: arc lint + arc unit