diff options
| author | Neeti Desai <neetid@codeaurora.org> | 2015-05-06 15:38:34 -0700 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-22 11:12:48 -0700 |
| commit | c9eb16e60f4a0b7c4ebd182f731cf94c6deeb738 (patch) | |
| tree | 3033087aa03c229af5b0b07621d6cd001edfd009 /include/linux | |
| parent | 1b458c04b48a4975a47c0f0246d7afa26c5d930f (diff) | |
arm64: dma-mapping: Split large pages when allocating in atomic context
In atomic context, gen_pool_alloc allocates a single page large
enough to accomodate the requested size. However __iommu_create_mapping
always maps pages assuming they are of size 4K. Thus only the first
4K of the buffer is mapped and a translation fault is generated
during an unmap.
Fix this by splitting the larger pages into 4K pages.
Change-Id: Ifcbe29477ad210204028486bd011470fe8b50852
Signed-off-by: Neeti Desai <neetid@codeaurora.org>
Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
[pdaly@codeaurora.org Keep upstream version of alloc_from_pool]
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
Diffstat (limited to 'include/linux')
0 files changed, 0 insertions, 0 deletions
