netpoll: prevent netpoll setup on slave devices
authorWANG Cong <amwang@redhat.com>
Thu, 9 Jun 2011 07:28:13 +0000 (00:28 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Jun 2011 07:28:13 +0000 (00:28 -0700)
In commit 8d8fc29d02a33e4bd5f4fa47823c1fd386346093
(netpoll: disable netpoll when enslave a device), we automatically
disable netpoll when the underlying device is being enslaved,
we also need to prevent people from setuping netpoll on
devices that are already enslaved.

Signed-off-by: WANG Cong <amwang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/netpoll.c

index 2d7d6d4737810c0bd9d0b93defbf2c972f1c6b2e..42ea4b0e59f1d3a780d57e9836181f055cb2c006 100644 (file)
@@ -792,6 +792,12 @@ int netpoll_setup(struct netpoll *np)
                return -ENODEV;
        }
 
+       if (ndev->master) {
+               printk(KERN_ERR "%s: %s is a slave device, aborting.\n",
+                      np->name, np->dev_name);
+               return -EBUSY;
+       }
+
        if (!netif_running(ndev)) {
                unsigned long atmost, atleast;