diff options
| author | 2011-03-08 17:21:49 +0100 | |
|---|---|---|
| committer | 2011-03-08 17:21:52 +0100 | |
| commit | 86cb2ec7b22a0a89b8660110dc03321fadbef45f (patch) | |
| tree | c4162b0ab7c4e3602e2b7a6a6fd47c55c3315fea /lib/swiotlb.c | |
| parent | perf report tui: Improve multi event session support (diff) | |
| parent | Linux 2.6.38-rc8 (diff) | |
| download | wireguard-linux-86cb2ec7b22a0a89b8660110dc03321fadbef45f.tar.xz wireguard-linux-86cb2ec7b22a0a89b8660110dc03321fadbef45f.zip | |
Merge commit 'v2.6.38-rc8' into perf/core
Merge reason: Merge latest fixes.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to '')
| -rw-r--r-- | lib/swiotlb.c | 6 |
1 files changed, 4 insertions, 2 deletions
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; } |
