From nobody Sat Mar 25 10:26:19 2023 X-Original-To: dev-commits-doc-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PkFbv6Ckfz41yWp for ; Sat, 25 Mar 2023 10:26:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PkFbv5XCPz3QTl; Sat, 25 Mar 2023 10:26:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679739979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5Gs0rmIkyTZupHOlpC1yAhotpZzoaFHNZSY8yEP/teU=; b=otgwh3ULe6rzt6rn+MuQsG9gBNM6+gru7B+c2fXykSV0PwKE7+Ge4oAI8Z8q9eBCTQbMC1 buwkPYL3BT0ve+yvJ/bDbry0nNedWJzU0PAEXnjCrlObYuH5uKYkvtgAPi7yNblA6J3IS0 gBbvwMmFdpcTEWY49vai48vP/ItAWmwoQwHGNyN+JOoPh5WuvJCig4wRe3cHrTsKwdhNf2 yMVO8G+9l4XCmRVElUUGlAa6QD5h/sF6d8Dc3Xm8cEWIuqsWwD/CaNam0EMdgn6e2t+L6O OiPuFZqKkW9uqrjBF7HoYvzMjaZBKfDwIndaNq3eb5gnAhabjkjHQ7v+o/YtXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679739979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5Gs0rmIkyTZupHOlpC1yAhotpZzoaFHNZSY8yEP/teU=; b=UCxvkTmqX6ncg7nBQ0EorkX3Qjpu9RrQ1KTXTvl2d4zjCGYigr9DWho/laal6EEWkhsFGD ddvqFf5LjfkZoLiiZg5H/g50egh8on2eJRr1OJd1gZGi46p6hnYbX7/tMgJUHFeZEH0OSO SMqvbEFjLWWfeE2QYjZKkL31hmfrp0A/k+Uwdd0A54tU2POulVZMKD3zbS/gUeS4zvoTrA RBW/vybyiI7B5xtvnVWYt6HAajgQMotEfT8ES0+ydoP7Iwr1h9Qn032jxMSlWEVvnk1phP J9rajp0sCnXo5TKeC6Ug9m5VJOf+ZQ7alqFw/Ny6a2Lh+GeZfVo9DFLu/zJ5mQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679739979; a=rsa-sha256; cv=none; b=Clw0HnHELEq9vofvm7m6PfTQ5sUuxER84N8yrHiM/zvWP72eGRabxQcAvtItVGeLApinNH gAbbSpWn62D6pi8PKulWmhjhRUrXrhdGUOBcMaTgQnNxNAIkv90ovjcKe1SwZfW8Y0V9jG vrkN2gGUfdJQ3m0qmsloCss9/7kp7cayRFweMDCh18IOTLS29Mxr10XB8zBd1NMC0qLPXI BXwhkxpn56aLRhhhY5T2ozTXrarzP8l7jZeWSBqL721/Ch38EJ+8CxHT89MwVG7wmKX0+i WGpyRKc0wMC8JDopdnI5Eu6cPR7ev0898o7xRqF3cSQWzJmEbgtQJCNYsUfAgw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PkFbv4YLnzwQC; Sat, 25 Mar 2023 10:26:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32PAQJ07020890; Sat, 25 Mar 2023 10:26:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32PAQJf6020889; Sat, 25 Mar 2023 10:26:19 GMT (envelope-from git) Date: Sat, 25 Mar 2023 10:26:19 GMT Message-Id: <202303251026.32PAQJf6020889@gitrepo.freebsd.org> To: doc-committers@FreeBSD.org, dev-commits-doc-all@FreeBSD.org From: Lorenzo Salvadore Subject: git: d00ba10be5 - main - Status/2023Q1/timerfd: Add report List-Id: Commit messages for all branches of the doc repository List-Archive: https://lists.freebsd.org/archives/dev-commits-doc-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-doc-all@freebsd.org X-BeenThere: dev-commits-doc-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: salvadore X-Git-Repository: doc X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d00ba10be5db70ae7834ef9dbb7e237fea413966 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by salvadore: URL: https://cgit.FreeBSD.org/doc/commit/?id=d00ba10be5db70ae7834ef9dbb7e237fea413966 commit d00ba10be5db70ae7834ef9dbb7e237fea413966 Author: Jake Freeland AuthorDate: 2023-03-23 23:42:50 +0000 Commit: Lorenzo Salvadore CommitDate: 2023-03-25 10:25:59 +0000 Status/2023Q1/timerfd: Add report Reviewed by: status (Pau Amma ) 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 + +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.