ath9k: Revamp TX aggregation
[safe/jmp/linux-2.6] / drivers / net / veth.c
index 75b40fe..852d0e7 100644 (file)
@@ -262,16 +262,20 @@ static void veth_dev_free(struct net_device *dev)
        free_netdev(dev);
 }
 
+static const struct net_device_ops veth_netdev_ops = {
+       .ndo_init       = veth_dev_init,
+       .ndo_open       = veth_open,
+       .ndo_start_xmit = veth_xmit,
+       .ndo_get_stats  = veth_get_stats,
+};
+
 static void veth_setup(struct net_device *dev)
 {
        ether_setup(dev);
 
-       dev->hard_start_xmit = veth_xmit;
-       dev->get_stats = veth_get_stats;
-       dev->open = veth_open;
+       dev->netdev_ops = &veth_netdev_ops;
        dev->ethtool_ops = &veth_ethtool_ops;
        dev->features |= NETIF_F_LLTX;
-       dev->init = veth_dev_init;
        dev->destructor = veth_dev_free;
 }
 
@@ -297,7 +301,7 @@ static int veth_device_event(struct notifier_block *unused,
 {
        struct net_device *dev = ptr;
 
-       if (dev->open != veth_open)
+       if (dev->netdev_ops->ndo_open != veth_open)
                goto out;
 
        switch (event) {