ng_ether naming

Andriy Gapon avg at FreeBSD.org
Thu Dec 13 11:46:29 UTC 2012


ng_ether uses if_xname for naming its nodes.
This could be troublesome for mapping interface names to their ng_ether companions
in the face of interface renaming capability.  Especially given that interface
renaming and ng_ether _module_ loading may happen in an arbitrary order.

I am not sure how to solve this best.

One possibility is to use if_dname+if_dunit combination for ng_ether naming.  This
should be stable and available for querying.  This behavior should also be
backward compatible with ng_ether being compiled into kernel (if_dname+if_dunit ==
if_xname before any renaming could occur).

Another possibility is to do ng_ether renaming when its interface is renamed.
This seems nicer but appears to be more work and more intrusive, because
interfaces would have to know about their ng_ether nodes.

What do you think?
Thank you.

And just in case:
$ ifconfig -l
net0 lo0
$ ngctl list
There are 2 total nodes:
  Name: re0             Type: ether           ID: 00000001   Num hooks: 0
  Name: ngctl11353      Type: socket          ID: 00000003   Num hooks: 0

-- 
Andriy Gapon


More information about the freebsd-net mailing list