diff options
| author | David S. Miller <davem@davemloft.net> | 2011-03-03 21:27:42 -0800 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2011-03-03 21:27:42 -0800 | 
| commit | 0a0e9ae1bd788bc19adc4d4ae08c98b233697402 (patch) | |
| tree | 13825eeb5bbeae27d66e95f12168eff4b60701ab /lib | |
| parent | 01a16b21d6adf992aa863186c3c4e561a57c1714 (diff) | |
| parent | b65a0e0c84cf489bfa00d6aa6c48abc5a237100f (diff) | |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
	drivers/net/bnx2x/bnx2x.h
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/nlattr.c | 2 | ||||
| -rw-r--r-- | lib/swiotlb.c | 6 | 
2 files changed, 5 insertions, 3 deletions
| diff --git a/lib/nlattr.c b/lib/nlattr.c index 5021cbc34411..ac09f2226dc7 100644 --- a/lib/nlattr.c +++ b/lib/nlattr.c @@ -148,7 +148,7 @@ nla_policy_len(const struct nla_policy *p, int n)  {  	int i, len = 0; -	for (i = 0; i < n; i++) { +	for (i = 0; i < n; i++, p++) {  		if (p->len)  			len += nla_total_size(p->len);  		else if (nla_attr_minlen[p->type]) diff --git a/lib/swiotlb.c b/lib/swiotlb.c index c47bbe11b804..93ca08b8a451 100644 --- a/lib/swiotlb.c +++ b/lib/swiotlb.c @@ -686,8 +686,10 @@ dma_addr_t swiotlb_map_page(struct device *dev, struct page *page,  	/*  	 * Ensure that the address returned is DMA'ble  	 */ -	if (!dma_capable(dev, dev_addr, size)) -		panic("map_single: bounce buffer is not DMA'ble"); +	if (!dma_capable(dev, dev_addr, size)) { +		swiotlb_tbl_unmap_single(dev, map, size, dir); +		dev_addr = swiotlb_virt_to_bus(dev, io_tlb_overflow_buffer); +	}  	return dev_addr;  } | 
