diff options
author | Kyle Evans <kevans@FreeBSD.org> | 2019-05-08 02:32:11 +0000 |
---|---|---|
committer | Kyle Evans <kevans@FreeBSD.org> | 2019-05-08 02:32:11 +0000 |
commit | 251a32b5b2babf50556669b192f5820a61f6d900 (patch) | |
tree | 7fcc1f3d18e672a7f4f3c9a42fb34e649de6abf5 /UPDATING | |
parent | d044b69950ed6ac292a3fd96323cfe5d81baf0f5 (diff) | |
download | src-251a32b5b2babf50556669b192f5820a61f6d900.tar.gz src-251a32b5b2babf50556669b192f5820a61f6d900.zip |
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
Notes
Notes:
svn path=/head/; revision=347241
Diffstat (limited to 'UPDATING')
-rw-r--r-- | UPDATING | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -31,6 +31,14 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW: disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20190507: + The tap(4) driver has been folded into tun(4), and the module has been + renamed to tuntap. You should update any kld_load="if_tap" or + kld_load="if_tun" entries in /etc/rc.conf, if_tap_load="YES" or + if_tun_load="YES" entries in /boot/loader.conf to load the if_tuntap + module instead, and "device tap" or "device tun" entries in kernel + config files to select the tuntap device instead. + 20190418: The following knobs have been added related to tradeoffs between safe use of the random device and availability in the absence of |