Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 91fa7cff authored by Patrick Daly's avatar Patrick Daly
Browse files

mm: cma: Increase number of cma retries



Some failures have been seen where pages in a cma region are pinned
by zap_page_range. Increase the number of cma to give these pages
more time to become unpinned.

arch_local_irq_restore(inline)
free_unref_page_list()
release_pages()
free_pages_and_swap_cache()
tlb_flush_mmu_free(inline)
tlb_flush_mmu()
arch_tlb_finish_mmu(inline)
tlb_finish_mmu(inline)
zap_page_range()
__do_sys_madvise(inline)
__se_sys_madvise(inline)
__arm64_sys_madvise()
invoke_syscall(inline)
el0_svc_common()
el0_svc_handler()
el0_svc(asm).

Change-Id: Id6da587f79bf3b283e76157e2b651a0335995d73
Signed-off-by: default avatarPatrick Daly <pdaly@codeaurora.org>
parent 9e9032d1
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -456,7 +456,7 @@ struct page *cma_alloc(struct cma *cma, size_t count, unsigned int align,
	struct page *page = NULL;
	int ret = -ENOMEM;
	int retry_after_sleep = 0;
	int max_retries = 2;
	int max_retries = 20;
	int available_regions = 0;

	if (!cma || !cma->count)
@@ -492,7 +492,7 @@ struct page *cma_alloc(struct cma *cma, size_t count, unsigned int align,
				 * are less.
				 */
				if (available_regions < 3)
					max_retries = 5;
					max_retries = 25;
				available_regions = 0;
				/*
				 * Page may be momentarily pinned by some other