]> Git Repo - linux.git/blobdiff - drivers/net/netconsole.c
memsw: remove noswapaccount kernel parameter
[linux.git] / drivers / net / netconsole.c
index a83e101440fdcc07070ed84ce3384a174dc46e13..dfc82720065ac0d68bb657dbf19150ff7dd4c89e 100644 (file)
@@ -621,11 +621,10 @@ static int netconsole_netdev_event(struct notifier_block *this,
        bool stopped = false;
 
        if (!(event == NETDEV_CHANGENAME || event == NETDEV_UNREGISTER ||
-             event == NETDEV_BONDING_DESLAVE || event == NETDEV_GOING_DOWN))
+             event == NETDEV_RELEASE || event == NETDEV_JOIN))
                goto done;
 
        spin_lock_irqsave(&target_list_lock, flags);
-restart:
        list_for_each_entry(nt, &target_list, list) {
                netconsole_target_get(nt);
                if (nt->np.dev == dev) {
@@ -633,6 +632,8 @@ restart:
                        case NETDEV_CHANGENAME:
                                strlcpy(nt->np.dev_name, dev->name, IFNAMSIZ);
                                break;
+                       case NETDEV_RELEASE:
+                       case NETDEV_JOIN:
                        case NETDEV_UNREGISTER:
                                /*
                                 * rtnl_lock already held
@@ -647,11 +648,7 @@ restart:
                                        dev_put(nt->np.dev);
                                        nt->np.dev = NULL;
                                        netconsole_target_put(nt);
-                                       goto restart;
                                }
-                               /* Fall through */
-                       case NETDEV_GOING_DOWN:
-                       case NETDEV_BONDING_DESLAVE:
                                nt->enabled = 0;
                                stopped = true;
                                break;
@@ -660,10 +657,21 @@ restart:
                netconsole_target_put(nt);
        }
        spin_unlock_irqrestore(&target_list_lock, flags);
-       if (stopped && (event == NETDEV_UNREGISTER || event == NETDEV_BONDING_DESLAVE))
+       if (stopped) {
                printk(KERN_INFO "netconsole: network logging stopped on "
-                       "interface %s as it %s\n",  dev->name,
-                       event == NETDEV_UNREGISTER ? "unregistered" : "released slaves");
+                      "interface %s as it ", dev->name);
+               switch (event) {
+               case NETDEV_UNREGISTER:
+                       printk(KERN_CONT "unregistered\n");
+                       break;
+               case NETDEV_RELEASE:
+                       printk(KERN_CONT "released slaves\n");
+                       break;
+               case NETDEV_JOIN:
+                       printk(KERN_CONT "is joining a master device\n");
+                       break;
+               }
+       }
 
 done:
        return NOTIFY_DONE;
This page took 0.040119 seconds and 4 git commands to generate.