diff options
author | Stephen Hemminger <shemminger@vyatta.com> | 2008-11-20 23:14:53 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-20 23:14:53 -0500 |
commit | 008298231abbeb91bc7be9e8b078607b816d1a4a (patch) | |
tree | 8cb0c17720086ef97c614b96241f06aa63ce8511 /drivers/net/tun.c | |
parent | 6ab33d51713d6d60c7677c0d020910a8cb37e513 (diff) |
netdev: add more functions to netdevice ops
This patch moves neigh_setup and hard_start_xmit into the network device ops
structure. For bisection, fix all the previously converted drivers as well.
Bonding driver took the biggest hit on this.
Added a prefetch of the hard_start_xmit in the fast path to try and reduce
any impact this would have.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/tun.c')
-rw-r--r-- | drivers/net/tun.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/tun.c b/drivers/net/tun.c index b4c941444756..fd0b11ea5562 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c | |||
@@ -308,13 +308,14 @@ tun_net_change_mtu(struct net_device *dev, int new_mtu) | |||
308 | static const struct net_device_ops tun_netdev_ops = { | 308 | static const struct net_device_ops tun_netdev_ops = { |
309 | .ndo_open = tun_net_open, | 309 | .ndo_open = tun_net_open, |
310 | .ndo_stop = tun_net_close, | 310 | .ndo_stop = tun_net_close, |
311 | .ndo_start_xmit = tun_net_xmit, | ||
311 | .ndo_change_mtu = tun_net_change_mtu, | 312 | .ndo_change_mtu = tun_net_change_mtu, |
312 | |||
313 | }; | 313 | }; |
314 | 314 | ||
315 | static const struct net_device_ops tap_netdev_ops = { | 315 | static const struct net_device_ops tap_netdev_ops = { |
316 | .ndo_open = tun_net_open, | 316 | .ndo_open = tun_net_open, |
317 | .ndo_stop = tun_net_close, | 317 | .ndo_stop = tun_net_close, |
318 | .ndo_start_xmit = tun_net_xmit, | ||
318 | .ndo_change_mtu = tun_net_change_mtu, | 319 | .ndo_change_mtu = tun_net_change_mtu, |
319 | .ndo_set_multicast_list = tun_net_mclist, | 320 | .ndo_set_multicast_list = tun_net_mclist, |
320 | .ndo_set_mac_address = eth_mac_addr, | 321 | .ndo_set_mac_address = eth_mac_addr, |
@@ -691,7 +692,6 @@ static void tun_setup(struct net_device *dev) | |||
691 | tun->owner = -1; | 692 | tun->owner = -1; |
692 | tun->group = -1; | 693 | tun->group = -1; |
693 | 694 | ||
694 | dev->hard_start_xmit = tun_net_xmit; | ||
695 | dev->ethtool_ops = &tun_ethtool_ops; | 695 | dev->ethtool_ops = &tun_ethtool_ops; |
696 | dev->destructor = free_netdev; | 696 | dev->destructor = free_netdev; |
697 | dev->features |= NETIF_F_NETNS_LOCAL; | 697 | dev->features |= NETIF_F_NETNS_LOCAL; |