diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-21 00:04:44 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-21 00:04:44 -0400 |
commit | f8965467f366fd18f01feafb5db10512d7b4422c (patch) | |
tree | 3706a9cd779859271ca61b85c63a1bc3f82d626e /drivers/net/ewrk3.c | |
parent | a26272e5200765691e67d6780e52b32498fdb659 (diff) | |
parent | 2ec8c6bb5d8f3a62a79f463525054bae1e3d4487 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1674 commits)
qlcnic: adding co maintainer
ixgbe: add support for active DA cables
ixgbe: dcb, do not tag tc_prio_control frames
ixgbe: fix ixgbe_tx_is_paused logic
ixgbe: always enable vlan strip/insert when DCB is enabled
ixgbe: remove some redundant code in setting FCoE FIP filter
ixgbe: fix wrong offset to fc_frame_header in ixgbe_fcoe_ddp
ixgbe: fix header len when unsplit packet overflows to data buffer
ipv6: Never schedule DAD timer on dead address
ipv6: Use POSTDAD state
ipv6: Use state_lock to protect ifa state
ipv6: Replace inet6_ifaddr->dead with state
cxgb4: notify upper drivers if the device is already up when they load
cxgb4: keep interrupts available when the ports are brought down
cxgb4: fix initial addition of MAC address
cnic: Return SPQ credit to bnx2x after ring setup and shutdown.
cnic: Convert cnic_local_flags to atomic ops.
can: Fix SJA1000 command register writes on SMP systems
bridge: fix build for CONFIG_SYSFS disabled
ARCNET: Limit com20020 PCI ID matches for SOHARD cards
...
Fix up various conflicts with pcmcia tree drivers/net/
{pcmcia/3c589_cs.c, wireless/orinoco/orinoco_cs.c and
wireless/orinoco/spectrum_cs.c} and feature removal
(Documentation/feature-removal-schedule.txt).
Also fix a non-content conflict due to pm_qos_requirement getting
renamed in the PM tree (now pm_qos_request) in net/mac80211/scan.c
Diffstat (limited to 'drivers/net/ewrk3.c')
-rw-r--r-- | drivers/net/ewrk3.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/drivers/net/ewrk3.c b/drivers/net/ewrk3.c index 91e59f3a9d6d..380d0614a89a 100644 --- a/drivers/net/ewrk3.c +++ b/drivers/net/ewrk3.c | |||
@@ -757,7 +757,7 @@ static void ewrk3_timeout(struct net_device *dev) | |||
757 | */ | 757 | */ |
758 | ENABLE_IRQs; | 758 | ENABLE_IRQs; |
759 | 759 | ||
760 | dev->trans_start = jiffies; | 760 | dev->trans_start = jiffies; /* prevent tx timeout */ |
761 | netif_wake_queue(dev); | 761 | netif_wake_queue(dev); |
762 | } | 762 | } |
763 | } | 763 | } |
@@ -862,7 +862,6 @@ static netdev_tx_t ewrk3_queue_pkt(struct sk_buff *skb, struct net_device *dev) | |||
862 | spin_unlock_irq (&lp->hw_lock); | 862 | spin_unlock_irq (&lp->hw_lock); |
863 | 863 | ||
864 | dev->stats.tx_bytes += skb->len; | 864 | dev->stats.tx_bytes += skb->len; |
865 | dev->trans_start = jiffies; | ||
866 | dev_kfree_skb (skb); | 865 | dev_kfree_skb (skb); |
867 | 866 | ||
868 | /* Check for free resources: stop Tx queue if there are none */ | 867 | /* Check for free resources: stop Tx queue if there are none */ |
@@ -1169,7 +1168,7 @@ static void set_multicast_list(struct net_device *dev) | |||
1169 | static void SetMulticastFilter(struct net_device *dev) | 1168 | static void SetMulticastFilter(struct net_device *dev) |
1170 | { | 1169 | { |
1171 | struct ewrk3_private *lp = netdev_priv(dev); | 1170 | struct ewrk3_private *lp = netdev_priv(dev); |
1172 | struct dev_mc_list *dmi; | 1171 | struct netdev_hw_addr *ha; |
1173 | u_long iobase = dev->base_addr; | 1172 | u_long iobase = dev->base_addr; |
1174 | int i; | 1173 | int i; |
1175 | char *addrs, bit, byte; | 1174 | char *addrs, bit, byte; |
@@ -1213,8 +1212,8 @@ static void SetMulticastFilter(struct net_device *dev) | |||
1213 | } | 1212 | } |
1214 | 1213 | ||
1215 | /* Update table */ | 1214 | /* Update table */ |
1216 | netdev_for_each_mc_addr(dmi, dev) { | 1215 | netdev_for_each_mc_addr(ha, dev) { |
1217 | addrs = dmi->dmi_addr; | 1216 | addrs = ha->addr; |
1218 | if ((*addrs & 0x01) == 1) { /* multicast address? */ | 1217 | if ((*addrs & 0x01) == 1) { /* multicast address? */ |
1219 | crc = ether_crc_le(ETH_ALEN, addrs); | 1218 | crc = ether_crc_le(ETH_ALEN, addrs); |
1220 | hashcode = crc & ((1 << 9) - 1); /* hashcode is 9 LSb of CRC */ | 1219 | hashcode = crc & ((1 << 9) - 1); /* hashcode is 9 LSb of CRC */ |
@@ -1370,8 +1369,6 @@ static void __init EthwrkSignature(char *name, char *eeprom_image) | |||
1370 | name[EWRK3_STRLEN] = '\0'; | 1369 | name[EWRK3_STRLEN] = '\0'; |
1371 | } else | 1370 | } else |
1372 | name[0] = '\0'; | 1371 | name[0] = '\0'; |
1373 | |||
1374 | return; | ||
1375 | } | 1372 | } |
1376 | 1373 | ||
1377 | /* | 1374 | /* |
@@ -1776,8 +1773,7 @@ static int ewrk3_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) | |||
1776 | break; | 1773 | break; |
1777 | case EWRK3_SET_MCA: /* Set a multicast address */ | 1774 | case EWRK3_SET_MCA: /* Set a multicast address */ |
1778 | if (capable(CAP_NET_ADMIN)) { | 1775 | if (capable(CAP_NET_ADMIN)) { |
1779 | if (ioc->len > 1024) | 1776 | if (ioc->len > HASH_TABLE_LEN) { |
1780 | { | ||
1781 | status = -EINVAL; | 1777 | status = -EINVAL; |
1782 | break; | 1778 | break; |
1783 | } | 1779 | } |