Manual Page Result
0
Command: portfeatures | Section: 9 | Source: NetBSD | File: portfeatures.9
PORTFEATURES(9) FreeBSD Kernel Developer's Manual PORTFEATURES(9)
NAME
portfeatures - the __HAVEs (and the have nots)
DESCRIPTION
Machine-independent kernel code adapts to differences in hardware
capabilities provided by the machine-dependent parts of the kernel. A
port declares its capabilities by defining various __HAVE_feature macros.
This manual page provides an index of such macros with pointers to other
manual pages in the kernel section that provide all the relevant details.
__HAVE_MUTEX_STUBS (mutex(9))
The port provides fast path mutex enter and exit stubs.
__HAVE_PREEMPTION (cpu_need_resched(9))
The port can preempt kernel lwps with RESCHED_KPREEMPT.
__HAVE_PTRACE_MACHDEP
The port has MD ptrace(2) requests, defines
PTRACE_MACHDEP_REQUEST_CASES macro with case labels for its
MD requests.
__HAVE_RAS (ras(9))
The port supports restartable atomic sequences.
__HAVE_SIMPLE_MUTEXES (mutex(9))
The port provides a CAS function that is either MP-safe, or
does not need to be MP safe. Adaptive mutexes on these
architectures do not require an additional interlock.
__HAVE_SPIN_MUTEX_STUBS (mutex(9))
The port provides fast path enter and exit stubs for spin
mutexes.
__HAVE_UCAS_FULL (ucas(9))
The port provides a full implementation of the low-level
primitives required for atomic compare-and-swap operations
to user-space addresses.
__HAVE_UCAS_MP (ucas(9))
The port does not provide a full implementation of the low-
level primitives required for atomic compare-and-swap
operations to user-space addresses, but does provide an
implementation of those primitives that can be used if (and
only if) the system has more than one processor.
FreeBSD 14.1-RELEASE-p8 March 6, 2023 FreeBSD 14.1-RELEASE-p8