モジュールにnetdevicenotifierを追加しています。
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のコードを見ると、デバイスがクリーンアップされた直後にイベントが送信されているように見えますが、何かが足りない可能性がありますか?
そして2番目の質問-インターフェースがシステムから登録解除されたときにインターフェースに割り当てられたIP/hwアドレスを削除するコードはどこにありますか?
ありがとう !マーク