[Bug 235704] [net] [patch] tun(4) can't be destroyed on a VNET jail if it's renamed
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Tue Mar 19 00:29:00 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235704
--- Comment #14 from commit-hook at freebsd.org ---
A commit references this bug:
Author: kp
Date: Tue Mar 19 00:27:48 UTC 2019
New revision: 345286
URL: https://svnweb.freebsd.org/changeset/base/345286
Log:
MFC r344794:
tun: VIMAGE fix for if_tun cloner
The if_tun cloner is not virtualised, but if_clone_attach() does use a
virtualised list of cloners.
The result is that we can't find the if_tun cloner when we try to remove
a renamed tun interface. Virtualise the cloner, and move the final
cleanup into a sysuninit so that we're sure this happens after all of
the vnet_sysuninits
Note that we need unit numbers to be system-unique (rather than unique
per vnet, as is done by if_clone_simple()). The unit number is used to
create the corresponding /dev/tunX device node, and this node must match
with the interface.
Switch to if_clone_advanced() so that we have control over the unit
numbers.
Reproduction scenario:
jail -c -n foo persist vnet
jexec test ifconfig tun create
jexec test ifconfig tun0 name wg0
jexec test ifconfig wg0 destroy
PR: 235704
Reviewed by: bz, hrs, hselasky
Differential Revision: https://reviews.freebsd.org/D19248
Changes:
_U stable/11/
stable/11/sys/net/if_tun.c
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-net
mailing list