From 8e278327bee0b149eef1cccecca9b7b3563c1184 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Mon, 23 May 2022 15:00:24 +0200 Subject: [PATCH] libbsd.txt: Move ported kernel features Remove obsolete file listing. --- CONTRIBUTING.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index af072efe..1c3164b2 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -507,3 +507,26 @@ DHCPCD(8) client is a consumer of these events for example. Make sure that the interface flag ``IFF_UP`` and the interface driver flag ``IFF_DRV_RUNNING`` is set in case the link is up, otherwise ``ether_output()`` will return the error status ``ENETDOWN``. + +FreeBSD Kernel Features Ported to LibBSD +======================================== + +All lock based synchronization primitives are implemented through mutexes using +the priority inheritance protocol. + +* `BUS_DMA(9) `_: Bus and Machine Independent DMA Mapping Interface +* `BUS_SPACE(9) `_: Bus space manipulation functions +* `CALLOUT(9) `_: Execute a function after a specified length of time +* `CONDVAR(9) `_: Kernel condition variable +* `DEVICE(9) `_: An abstract representation of a device +* `DRIVER(9) `_: Structure describing a device driver +* `EPOCH(9) `_: Kernel epoch based reclamation +* `MUTEX(9) `_: Kernel synchronization primitives +* `RMAN(9) `_: Resource management functions +* `RMLOCK(9) `_: Kernel reader/writer lock optimized for read-mostly access patterns +* `RWLOCK(9) `_: Kernel reader/writer lock +* `SX(9) `_: Kernel shared/exclusive lock +* `SYSCTL(9) `_: Dynamic and static sysctl MIB creation functions +* `SYSINIT(9) `_: A framework for dynamic kernel initialization +* `TASKQUEUE(9) `_: Asynchronous task execution +* `UMA(9) `_: General-purpose kernel object allocator