ng_ether naming
Andriy Gapon
avg at FreeBSD.org
Thu Dec 13 16:25:09 UTC 2012
on 13/12/2012 14:08 Alexander V. Chernikov said the following:
> On 13.12.2012 15:46, Andriy Gapon wrote:
>>
>> 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.
>
> Not exactly. You can register for ifnet_departure_event and ifnet_arrival_event.
>
> Interface renaming is done via sending departure event with old name and arrvial
> event with new one.
Good to know. Thank you!
So which approach sounds better?
Or maybe there is even a better one?
>>
>> 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