diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-05-18 14:08:58 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-05-18 14:08:58 -0700 |
commit | 02730d3c053a9af1d402e1c8dc8bbbc5a1340406 (patch) | |
tree | db289a08de50eb4b5caf7840d5b7356ddfa1c51f /arch/arm/xen/mm.c | |
parent | 77232f791e0605521a978cbe7f79a93df24df374 (diff) | |
parent | e26081808edadfd257c6c9d81014e3b25e9a6118 (diff) | |
download | lwn-02730d3c053a9af1d402e1c8dc8bbbc5a1340406.tar.gz lwn-02730d3c053a9af1d402e1c8dc8bbbc5a1340406.zip |
Merge 4.1-rc4 into tty-next
This resolves some tty driver merge issues.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/arm/xen/mm.c')
-rw-r--r-- | arch/arm/xen/mm.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/xen/mm.c b/arch/arm/xen/mm.c index 793551d15f1d..498325074a06 100644 --- a/arch/arm/xen/mm.c +++ b/arch/arm/xen/mm.c @@ -4,6 +4,7 @@ #include <linux/gfp.h> #include <linux/highmem.h> #include <linux/export.h> +#include <linux/memblock.h> #include <linux/of_address.h> #include <linux/slab.h> #include <linux/types.h> @@ -21,6 +22,20 @@ #include <asm/xen/hypercall.h> #include <asm/xen/interface.h> +unsigned long xen_get_swiotlb_free_pages(unsigned int order) +{ + struct memblock_region *reg; + gfp_t flags = __GFP_NOWARN; + + for_each_memblock(memory, reg) { + if (reg->base < (phys_addr_t)0xffffffff) { + flags |= __GFP_DMA; + break; + } + } + return __get_free_pages(flags, order); +} + enum dma_cache_op { DMA_UNMAP, DMA_MAP, |