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/atlx | |
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/atlx')
-rw-r--r-- | drivers/net/atlx/atl1.c | 4 | ||||
-rw-r--r-- | drivers/net/atlx/atl2.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/atlx/atl1.c b/drivers/net/atlx/atl1.c index 7a0fb04e3480..aef7e47fdd24 100644 --- a/drivers/net/atlx/atl1.c +++ b/drivers/net/atlx/atl1.c | |||
@@ -2883,12 +2883,13 @@ static void atl1_poll_controller(struct net_device *netdev) | |||
2883 | static const struct net_device_ops atl1_netdev_ops = { | 2883 | static const struct net_device_ops atl1_netdev_ops = { |
2884 | .ndo_open = atl1_open, | 2884 | .ndo_open = atl1_open, |
2885 | .ndo_stop = atl1_close, | 2885 | .ndo_stop = atl1_close, |
2886 | .ndo_start_xmit = atl1_xmit_frame, | ||
2886 | .ndo_set_multicast_list = atlx_set_multi, | 2887 | .ndo_set_multicast_list = atlx_set_multi, |
2887 | .ndo_validate_addr = eth_validate_addr, | 2888 | .ndo_validate_addr = eth_validate_addr, |
2888 | .ndo_set_mac_address = atl1_set_mac, | 2889 | .ndo_set_mac_address = atl1_set_mac, |
2889 | .ndo_change_mtu = atl1_change_mtu, | 2890 | .ndo_change_mtu = atl1_change_mtu, |
2890 | .ndo_do_ioctl = atlx_ioctl, | 2891 | .ndo_do_ioctl = atlx_ioctl, |
2891 | .ndo_tx_timeout = atlx_tx_timeout, | 2892 | .ndo_tx_timeout = atlx_tx_timeout, |
2892 | .ndo_vlan_rx_register = atlx_vlan_rx_register, | 2893 | .ndo_vlan_rx_register = atlx_vlan_rx_register, |
2893 | #ifdef CONFIG_NET_POLL_CONTROLLER | 2894 | #ifdef CONFIG_NET_POLL_CONTROLLER |
2894 | .ndo_poll_controller = atl1_poll_controller, | 2895 | .ndo_poll_controller = atl1_poll_controller, |
@@ -2983,7 +2984,6 @@ static int __devinit atl1_probe(struct pci_dev *pdev, | |||
2983 | adapter->mii.reg_num_mask = 0x1f; | 2984 | adapter->mii.reg_num_mask = 0x1f; |
2984 | 2985 | ||
2985 | netdev->netdev_ops = &atl1_netdev_ops; | 2986 | netdev->netdev_ops = &atl1_netdev_ops; |
2986 | netdev->hard_start_xmit = &atl1_xmit_frame; | ||
2987 | netdev->watchdog_timeo = 5 * HZ; | 2987 | netdev->watchdog_timeo = 5 * HZ; |
2988 | 2988 | ||
2989 | netdev->ethtool_ops = &atl1_ethtool_ops; | 2989 | netdev->ethtool_ops = &atl1_ethtool_ops; |
diff --git a/drivers/net/atlx/atl2.c b/drivers/net/atlx/atl2.c index b8d585722e1a..0326a84503e3 100644 --- a/drivers/net/atlx/atl2.c +++ b/drivers/net/atlx/atl2.c | |||
@@ -1315,6 +1315,7 @@ static void atl2_poll_controller(struct net_device *netdev) | |||
1315 | static const struct net_device_ops atl2_netdev_ops = { | 1315 | static const struct net_device_ops atl2_netdev_ops = { |
1316 | .ndo_open = atl2_open, | 1316 | .ndo_open = atl2_open, |
1317 | .ndo_stop = atl2_close, | 1317 | .ndo_stop = atl2_close, |
1318 | .ndo_start_xmit = atl2_xmit_frame, | ||
1318 | .ndo_set_multicast_list = atl2_set_multi, | 1319 | .ndo_set_multicast_list = atl2_set_multi, |
1319 | .ndo_validate_addr = eth_validate_addr, | 1320 | .ndo_validate_addr = eth_validate_addr, |
1320 | .ndo_set_mac_address = atl2_set_mac, | 1321 | .ndo_set_mac_address = atl2_set_mac, |
@@ -1400,7 +1401,6 @@ static int __devinit atl2_probe(struct pci_dev *pdev, | |||
1400 | 1401 | ||
1401 | atl2_setup_pcicmd(pdev); | 1402 | atl2_setup_pcicmd(pdev); |
1402 | 1403 | ||
1403 | netdev->hard_start_xmit = &atl2_xmit_frame; | ||
1404 | netdev->netdev_ops = &atl2_netdev_ops; | 1404 | netdev->netdev_ops = &atl2_netdev_ops; |
1405 | atl2_set_ethtool_ops(netdev); | 1405 | atl2_set_ethtool_ops(netdev); |
1406 | netdev->watchdog_timeo = 5 * HZ; | 1406 | netdev->watchdog_timeo = 5 * HZ; |