git: d00ba10be5 - main - Status/2023Q1/timerfd: Add report

Lorenzo Salvadore <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
The branch main has been updated by salvadore:

URL: https://cgit.FreeBSD.org/doc/commit/?id=d00ba10be5db70ae7834ef9dbb7e237fea413966

commit d00ba10be5db70ae7834ef9dbb7e237fea413966
Author:     Jake Freeland <[email protected]>
AuthorDate: 2023-03-23 23:42:50 +0000
Commit:     Lorenzo Salvadore <[email protected]>
CommitDate: 2023-03-25 10:25:59 +0000

    Status/2023Q1/timerfd: Add report
    
    Reviewed by:    status (Pau Amma <[email protected]>)
    Approved by:    carlavilla (mentor)
    Differential Revision: https://reviews.freebsd.org/D39238
---
 .../en/status/report-2023-01-2023-03/timerfd.adoc  | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/website/content/en/status/report-2023-01-2023-03/timerfd.adoc b/website/content/en/status/report-2023-01-2023-03/timerfd.adoc
new file mode 100644
index 0000000000..0b971fc047
--- /dev/null
+++ b/website/content/en/status/report-2023-01-2023-03/timerfd.adoc
@@ -0,0 +1,22 @@
+=== Native Linux timerfd
+
+Links: +
+link:https://reviews.freebsd.org/D38459[Differential revision] URL: link:https://reviews.freebsd.org/D38459[https://reviews.freebsd.org/D38459]
+
+Contact: Jake Freeland <[email protected]>
+
+The timerfd facility is a set of Linux-standard system calls that operate on interval timers.
+These timers are analogous to per-process timers but are represented by a file descriptor, rather than a process.
+These file descriptors may be passed to other processes, are preserved across fork(2), and may be monitored via kevent(2), poll(2), or select(2).
+
+A timerfd implementation in FreeBSD already exists for Linux compatibility, but
+link:https://reviews.freebsd.org/D38459[this differential revision]
+makes the interface native.
+The goal behind this change is to ease the FreeBSD porting process for programs that include timerfd.
+
+This specific implementation avoids adding new names to the system call table.
+Instead, timerfd_create() is wrapped by the specialfd() system call.
+The timerfd_gettime() and timerfd_settime() calls are wrapped ioctl()s.
+
+Developers that wish to support FreeBSD should avoid using timerfd.
+The kqueue() EVFILT_TIMER filter is preferred for establishing arbitrary timers.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.