mm: Don't use CMA pages for writes
If CMA pages are used for writes, the writes may not complete fast enough for CMA to be allocated within a reasonable amount of time. If we get a CMA page, get another one to use instead. Change-Id: I19d8ba655da7525d68d5947337d500566998971c Signed-off-by: Laura Abbott <lauraa@codeaurora.org> Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
This commit is contained in:
committed by
Stephen Boyd
parent
d4c6e690a5
commit
24c697b28a
@@ -2343,9 +2343,17 @@ repeat:
|
||||
if (page)
|
||||
goto found;
|
||||
|
||||
retry:
|
||||
page = __page_cache_alloc(gfp_mask & ~gfp_notmask);
|
||||
if (!page)
|
||||
return NULL;
|
||||
|
||||
if (is_cma_pageblock(page)) {
|
||||
__free_page(page);
|
||||
gfp_notmask |= __GFP_MOVABLE;
|
||||
goto retry;
|
||||
}
|
||||
|
||||
status = add_to_page_cache_lru(page, mapping, index,
|
||||
GFP_KERNEL & ~gfp_notmask);
|
||||
if (unlikely(status)) {
|
||||
|
||||
Reference in New Issue
Block a user