我在我的模块中添加了一个网络设备通知程序:
int os_netdevice_notifier_cb (struct notifier_block *, unsigned long, void *);
...
static struct notifier_block os_netdevice_notifier =
{
os_netdevice_notifier_cb,
NULL,
0
};
register_netdevice_notifier(&os_netdevice_notifier);
我希望能够看到哪些设备已注册/取消注册,即我必须监视事件 NETDEV_UNREGISTER。收到此事件后,是否保证该设备已从系统中移除,或者这仅表明它已被安排移除,实际工作将在稍后完成?
查看 net/core/dev.c 中的代码似乎是在清理设备后立即发送事件,但可能是我遗漏了什么?
第二个问题——删除分配给接口的 IP/硬件地址的代码在哪里,因为它从系统中注销?
谢谢 !标记