freebsd-dev/sys/arm/conf
Kyle Evans 251a32b5b2 tun/tap: merge and rename to tuntap
tun(4) and tap(4) share the same general management interface and have a lot
in common. Bugs exist in tap(4) that have been fixed in tun(4), and
vice-versa. Let's reduce the maintenance requirements by merging them
together and using flags to differentiate between the three interface types
(tun, tap, vmnet).

This fixes a couple of tap(4)/vmnet(4) issues right out of the gate:
- tap devices may no longer be destroyed while they're open [0]
- VIMAGE issues already addressed in tun by kp

[0] emaste had removed an easy-panic-button in r240938 due to devdrn
blocking. A naive glance over this leads me to believe that this isn't quite
complete -- destroy_devl will only block while executing d_* functions, but
doesn't block the device from being destroyed while a process has it open.
The latter is the intent of the condvar in tun, so this is "fixed" (for
certain definitions of the word -- it wasn't really broken in tap, it just
wasn't quite ideal).

ifconfig(8) also grew the ability to map an interface name to a kld, so
that `ifconfig {tun,tap}0` can continue to autoload the correct module, and
`ifconfig vmnet0 create` will now autoload the correct module. This is a
low overhead addition.

(MFC commentary)

This may get MFC'd if many bugs in tun(4)/tap(4) are discovered after this,
and how critical they are. Changes after this are likely easily MFC'd
without taking this merge, but the merge will be easier.

I have no plans to do this MFC as of now.

Reviewed by:	bcr (manpages), tuexen (testing, syzkaller/packetdrill)
Input also from:	melifaro
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D20044
2019-05-08 02:32:11 +00:00
..
ALPINE Move options INTRNG into std.armv6 and std.armv7 2018-08-20 20:31:53 +00:00
APALIS-IMX6 Update several more URLs 2017-10-29 08:17:03 +00:00
ARMADA38X Comment MD_ROOT and remove 'device re' which is not part of the system and 2018-11-15 16:29:27 +00:00
ARMADAXP Move options INTRNG into std.armv6 and std.armv7 2018-08-20 20:31:53 +00:00
ARNDALE Update several more URLs 2017-10-29 08:17:03 +00:00
ARNDALE-OCTA Update several more URLs 2017-10-29 08:17:03 +00:00
COLIBRI-VF50 Update several more URLs 2017-10-29 08:17:03 +00:00
COSMIC Update several more URLs 2017-10-29 08:17:03 +00:00
DB-78XXX In the TCP stack, the hhook(9) framework provides hooks for kernel modules 2016-10-12 02:16:42 +00:00
DB-88F5XXX In the TCP stack, the hhook(9) framework provides hooks for kernel modules 2016-10-12 02:16:42 +00:00
DB-88F6XXX In the TCP stack, the hhook(9) framework provides hooks for kernel modules 2016-10-12 02:16:42 +00:00
DEFAULTS
DOCKSTAR tun/tap: merge and rename to tuntap 2019-05-08 02:32:11 +00:00
DREAMPLUG-1001 tun/tap: merge and rename to tuntap 2019-05-08 02:32:11 +00:00
EA3250.hints
EFIKA_MX tun/tap: merge and rename to tuntap 2019-05-08 02:32:11 +00:00
genboardid.awk Remove 'All Rights Reserved.' from all of my Copyrights in sys/arm and 2018-05-01 16:21:01 +00:00
GENERIC arm: allwinner: Makes more device optional 2019-04-16 22:42:50 +00:00
GENERIC-MMCCAM Revert r339421 due to unintended files included to commit. 2018-10-18 15:17:58 +00:00
GENERIC-NODEBUG Since we don't enable BUF_TRACKING and FULL_BUF_TRACKING buffer debugging 2018-06-05 05:24:42 +00:00
IMX6 tun/tap: merge and rename to tuntap 2019-05-08 02:32:11 +00:00
IMX53 tun/tap: merge and rename to tuntap 2019-05-08 02:32:11 +00:00
JETSON-TK1 Update several more URLs 2017-10-29 08:17:03 +00:00
mach-types
Makefile
NOTES Move mpr/mps drivers from per-arch NOTES files into the MI notes 2019-04-13 06:30:45 +00:00
QUARTZ Update several more URLs 2017-10-29 08:17:03 +00:00
RPI-B Specify correct Ethernet phy for RPI-B 2019-04-16 09:44:46 +00:00
RT1310 This builds now, so aadd it back to Universe. 2018-07-27 21:26:32 +00:00
SAM9G20EK.hints
SHEEVAPLUG In the TCP stack, the hhook(9) framework provides hooks for kernel modules 2016-10-12 02:16:42 +00:00
SOCDK Revert r339421 due to unintended files included to commit. 2018-10-18 15:17:58 +00:00
SOCFPGA Move options INTRNG into std.armv6 and std.armv7 2018-08-20 20:31:53 +00:00
SOCKIT Update several more URLs 2017-10-29 08:17:03 +00:00
SOCKIT-BERI Update several more URLs 2017-10-29 08:17:03 +00:00
std.arm Add a COMPAT_FREEBSD12 kernel option. 2019-05-02 18:10:23 +00:00
std.armv6 Add a COMPAT_FREEBSD12 kernel option. 2019-05-02 18:10:23 +00:00
std.armv7 Add a COMPAT_FREEBSD12 kernel option. 2019-05-02 18:10:23 +00:00
TEGRA124 tun/tap: merge and rename to tuntap 2019-05-08 02:32:11 +00:00
TS7800 In the TCP stack, the hhook(9) framework provides hooks for kernel modules 2016-10-12 02:16:42 +00:00
VERSATILEPB Move options INTRNG into std.armv6 and std.armv7 2018-08-20 20:31:53 +00:00
VSATV102 Move options INTRNG into std.armv6 and std.armv7 2018-08-20 20:31:53 +00:00
VYBRID Move options INTRNG into std.armv6 and std.armv7 2018-08-20 20:31:53 +00:00
YYHD18 Update several more URLs 2017-10-29 08:17:03 +00:00
ZEDBOARD Move options INTRNG into std.armv6 and std.armv7 2018-08-20 20:31:53 +00:00