diff options
| author | David S. Miller <davem@davemloft.net> | 2013-04-01 13:36:50 -0400 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2013-04-01 13:36:50 -0400 | 
| commit | a210576cf891e9e6d2c238eabcf5c1286b1e7526 (patch) | |
| tree | 0fa81a901cf628b25e6ee79057700cf39e59818a /drivers/net/ethernet/intel/e1000/e1000_ethtool.c | |
| parent | 7d4c04fc170087119727119074e72445f2bb192b (diff) | |
| parent | 3658f3604066d5500ebd73a04084f127dc779441 (diff) | |
| download | olio-linux-3.10-a210576cf891e9e6d2c238eabcf5c1286b1e7526.tar.xz olio-linux-3.10-a210576cf891e9e6d2c238eabcf5c1286b1e7526.zip  | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
	net/mac80211/sta_info.c
	net/wireless/core.h
Two minor conflicts in wireless.  Overlapping additions of extern
declarations in net/wireless/core.h and a bug fix overlapping with
the addition of a boolean parameter to __ieee80211_key_free().
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/intel/e1000/e1000_ethtool.c')
| -rw-r--r-- | drivers/net/ethernet/intel/e1000/e1000_ethtool.c | 14 | 
1 files changed, 11 insertions, 3 deletions
diff --git a/drivers/net/ethernet/intel/e1000/e1000_ethtool.c b/drivers/net/ethernet/intel/e1000/e1000_ethtool.c index a9f9c790676..82a967c9559 100644 --- a/drivers/net/ethernet/intel/e1000/e1000_ethtool.c +++ b/drivers/net/ethernet/intel/e1000/e1000_ethtool.c @@ -1052,6 +1052,10 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)  		txdr->buffer_info[i].dma =  			dma_map_single(&pdev->dev, skb->data, skb->len,  				       DMA_TO_DEVICE); +		if (dma_mapping_error(&pdev->dev, txdr->buffer_info[i].dma)) { +			ret_val = 4; +			goto err_nomem; +		}  		tx_desc->buffer_addr = cpu_to_le64(txdr->buffer_info[i].dma);  		tx_desc->lower.data = cpu_to_le32(skb->len);  		tx_desc->lower.data |= cpu_to_le32(E1000_TXD_CMD_EOP | @@ -1068,7 +1072,7 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)  	rxdr->buffer_info = kcalloc(rxdr->count, sizeof(struct e1000_buffer),  				    GFP_KERNEL);  	if (!rxdr->buffer_info) { -		ret_val = 4; +		ret_val = 5;  		goto err_nomem;  	} @@ -1076,7 +1080,7 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)  	rxdr->desc = dma_alloc_coherent(&pdev->dev, rxdr->size, &rxdr->dma,  					GFP_KERNEL | __GFP_ZERO);  	if (!rxdr->desc) { -		ret_val = 5; +		ret_val = 6;  		goto err_nomem;  	}  	rxdr->next_to_use = rxdr->next_to_clean = 0; @@ -1099,7 +1103,7 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)  		skb = alloc_skb(E1000_RXBUFFER_2048 + NET_IP_ALIGN, GFP_KERNEL);  		if (!skb) { -			ret_val = 6; +			ret_val = 7;  			goto err_nomem;  		}  		skb_reserve(skb, NET_IP_ALIGN); @@ -1108,6 +1112,10 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)  		rxdr->buffer_info[i].dma =  			dma_map_single(&pdev->dev, skb->data,  				       E1000_RXBUFFER_2048, DMA_FROM_DEVICE); +		if (dma_mapping_error(&pdev->dev, rxdr->buffer_info[i].dma)) { +			ret_val = 8; +			goto err_nomem; +		}  		rx_desc->buffer_addr = cpu_to_le64(rxdr->buffer_info[i].dma);  		memset(skb->data, 0x00, skb->len);  	}  |