<div dir="ltr"><div>static int edal_netdevice_event(struct notifier_block *this, unsigned long event, void *ptr)<br>{<br> struct net_device *dev = netdev_notifier_info_to_dev(ptr);<br>    //  struct net_device *dev = NULL;<br>     //   dev = ptr; <br>        switch (event)<br>        {<br>                case NETDEV_REGISTER:<br>                        printk(KERN_INFO&quot;###### EDAL NET Interface is Up #######\n&quot;);<br>                        printk(KERN_INFO&quot;EDAL MESSAGE: %s IS UP\n&quot;,dev-&gt;name);<br>                        break;<br>                case NETDEV_UNREGISTER:<br>                        printk(KERN_INFO&quot;###### EDAL NET Interface is Down ######\n&quot;);<br>                        printk(KERN_INFO&quot;EDAL MESSAGE: %s IS Down\n&quot;,dev-&gt;name);<br>                        break;<br>        }<br>        return 0;<br>}<br> static struct notifier_block edal_netdevice_notifier=<br>{<br>.notifier_call = edal_netdevice_event,<br>.next = NULL,<br>.priority = 1,<br>};<br><br>        static struct notifier_block edal_netdevice_notifier;<br>static int __init initial(void)<br>{<br>        printk(KERN_INFO&quot;This is initialisation function=%s\n&quot;,__func__);<br>        printk(KERN_INFO&quot;hello kernel\n&quot;);<br>        register_netdevice_notifier(&amp;edal_netdevice_notifier);<br>        return 0;<br>}<br>void __exit cleanup(void)<br>{<br>        printk(KERN_INFO&quot;This is exit function=%s\n&quot;,__func__);<br>        printk(KERN_INFO&quot;bye kernel\n&quot;);<br>        unregister_netdevice_notifier(&amp;edal_netdevice_notifier);<br>}<br>module_init(initial);<br>module_exit(cleanup);<br><br></div><div>When I insmod the module it shows:<br> ###### EDAL NET Interface is Up #######<br>[ 1315.348657] EDAL MESSAGE: lo IS UP<br>[ 1315.348659] ###### EDAL NET Interface is Up #######<br>[ 1315.348661] EDAL MESSAGE: eth0 IS UP<br>[ 1315.348663] ###### EDAL NET Interface is Up #######<br>[ 1315.348665] EDAL MESSAGE: wlan0 IS UP<br> <br></div><div>but when I remove the Ethernet Interface It doesn&#39;t show anything but when I remove module then it shows:<br>[ 1171.403424] This is exit function=cleanup<br>[ 1171.403428] bye kernel<br>[ 1171.403431] ###### EDAL NET Interface is Down ######<br>[ 1171.403432] EDAL MESSAGE: lo IS Down<br>[ 1171.403434] ###### EDAL NET Interface is Down ######<br>[ 1171.403435] EDAL MESSAGE: eth0 IS Down<br>[ 1171.403437] ###### EDAL NET Interface is Down ######<br>[ 1171.403438] EDAL MESSAGE: wlan0 IS Down<br><br></div><div>Please help!<br></div></div>