=== Native Linux timerfd

Links: +
link:https://reviews.freebsd.org/D38459[Differential revision] URL: link:https://reviews.freebsd.org/D38459[]

Contact: Jake Freeland <jfree@FreeBSD.org>

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 man:fork[2], and may be monitored via man:kevent[2], man:poll[2], or man: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.
