diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-01-12 23:53:29 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-01-12 23:53:29 -0500 |
commit | 597d8c717856f6094837850f3eb4850820b36451 (patch) | |
tree | 44c1b1115df6a80f6cee3684a01cdbc18b034134 /drivers/net/atlx/atl2.c | |
parent | 682137f7e6bc78e3c324874c0c213123ddc5e261 (diff) | |
parent | 9db2f1bec36805e57a003f7bb90e003815d96de8 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (56 commits)
sky2: Fix oops in sky2_xmit_frame() after TX timeout
Documentation/3c509: document ethtool support
af_packet: Don't use skb after dev_queue_xmit()
vxge: use pci_dma_mapping_error to test return value
netfilter: ebtables: enforce CAP_NET_ADMIN
e1000e: fix and commonize code for setting the receive address registers
e1000e: e1000e_enable_tx_pkt_filtering() returns wrong value
e1000e: perform 10/100 adaptive IFS only on parts that support it
e1000e: don't accumulate PHY statistics on PHY read failure
e1000e: call pci_save_state() after pci_restore_state()
netxen: update version to 4.0.72
netxen: fix set mac addr
netxen: fix smatch warning
netxen: fix tx ring memory leak
tcp: update the netstamp_needed counter when cloning sockets
TI DaVinci EMAC: Handle emac module clock correctly.
dmfe/tulip: Let dmfe handle DM910x except for SPARC on-board chips
ixgbe: Fix compiler warning about variable being used uninitialized
netfilter: nf_ct_ftp: fix out of bounds read in update_nl_seq()
mv643xx_eth: don't include cache padding in rx desc buffer size
...
Fix trivial conflict in drivers/scsi/cxgb3i/cxgb3i_offload.c
Diffstat (limited to 'drivers/net/atlx/atl2.c')
-rw-r--r-- | drivers/net/atlx/atl2.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/atlx/atl2.c b/drivers/net/atlx/atl2.c index c0451d75cdcf..ec52529394ad 100644 --- a/drivers/net/atlx/atl2.c +++ b/drivers/net/atlx/atl2.c | |||
@@ -1959,12 +1959,15 @@ static int atl2_get_eeprom(struct net_device *netdev, | |||
1959 | return -ENOMEM; | 1959 | return -ENOMEM; |
1960 | 1960 | ||
1961 | for (i = first_dword; i < last_dword; i++) { | 1961 | for (i = first_dword; i < last_dword; i++) { |
1962 | if (!atl2_read_eeprom(hw, i*4, &(eeprom_buff[i-first_dword]))) | 1962 | if (!atl2_read_eeprom(hw, i*4, &(eeprom_buff[i-first_dword]))) { |
1963 | return -EIO; | 1963 | ret_val = -EIO; |
1964 | goto free; | ||
1965 | } | ||
1964 | } | 1966 | } |
1965 | 1967 | ||
1966 | memcpy(bytes, (u8 *)eeprom_buff + (eeprom->offset & 3), | 1968 | memcpy(bytes, (u8 *)eeprom_buff + (eeprom->offset & 3), |
1967 | eeprom->len); | 1969 | eeprom->len); |
1970 | free: | ||
1968 | kfree(eeprom_buff); | 1971 | kfree(eeprom_buff); |
1969 | 1972 | ||
1970 | return ret_val; | 1973 | return ret_val; |