From 55bb2048feb59f2190f704c2a4df81b557b55c7a Mon Sep 17 00:00:00 2001 From: Daniel Hillenbrand Date: Tue, 4 Jun 2013 01:33:22 +0200 Subject: smdk4412: bulk update from i9300 update 9 Change-Id: Icd3e7b601f3f4c8b3dcf053fed5819fb7caf5296 --- mm/cma.c | 8 +++++++- mm/page_alloc-cma.c | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'mm') diff --git a/mm/cma.c b/mm/cma.c index 9d07750..2e5805b 100644 --- a/mm/cma.c +++ b/mm/cma.c @@ -284,9 +284,15 @@ bool cma_is_registered_region(phys_addr_t start, size_t size) { struct cma_region *reg; + if (start + size <= start) + return false; + cma_foreach_region(reg) { if ((start >= reg->start) && - ((start + size) <= (reg->start + reg->size))) + ((start + size) <= (reg->start + reg->size)) && + (size <= reg->size) && + (start < (reg->start + reg->size))) + return true; } return false; diff --git a/mm/page_alloc-cma.c b/mm/page_alloc-cma.c index 74cdf7d..fc675bd 100644 --- a/mm/page_alloc-cma.c +++ b/mm/page_alloc-cma.c @@ -6057,7 +6057,7 @@ static int __alloc_contig_migrate_range(unsigned long start, unsigned long end) failed_pages[i][j] = NULL; } - migrate_prep_local(); + migrate_prep(); while (pfn < end || !list_empty(&cc.migratepages)) { if (fatal_signal_pending(current)) { -- cgit v1.1