diff options
-rw-r--r-- | kernel/dma-coherent.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/dma-coherent.c b/kernel/dma-coherent.c index 038707404b7..38fa292c6aa 100644 --- a/kernel/dma-coherent.c +++ b/kernel/dma-coherent.c @@ -118,8 +118,8 @@ int dma_alloc_from_coherent(struct device *dev, ssize_t size, mem = dev->dma_mem; if (!mem) return 0; - if (unlikely(size > mem->size)) - return 0; + if (unlikely(size > (mem->size << PAGE_SHIFT))) + return 0; pageno = bitmap_find_free_region(mem->bitmap, mem->size, order); if (pageno >= 0) { |