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

Commit 812c411f authored by Amit Pundir's avatar Amit Pundir Committed by Patrick Daly
Browse files

ion: fix page pool cache policy



Fix redundant "buffer->private_flags & ION_PRIV_FLAG_SHRINKER_FREE"
checks in if(!cached ...) condition block.

AOSP Change-Id: I98ee8902df0c80135dddfa998c4ca4c2bb44e40e,
"ion: Handle the memory mapping correctly on x86", is broken
on android-3.18+ kernels. It conflicts with upstream commit
53a91c68, "staging: ion: Add private buffer flag to skip
page pooling on free", and break the ION_PRIV_FLAG_SHRINKER_FREE
private flag check logic.

CRs-Fixed: 997730
Change-Id: I9cee4bcc3545cf92e07c21c2b42d27cf88da3316
Reported-by: default avatarchenfeng <puck.chen@hisilicon.com>
Signed-off-by: default avatarAmit Pundir <amit.pundir@linaro.org>
Git-commit: e9db98677f921dc1604a6bf1de2e0b0e8f4f9ae5
Git-repo: https://android.googlesource.com/kernel/common/


Signed-off-by: default avatarPatrick Daly <pdaly@codeaurora.org>
parent 6cfee750
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -119,8 +119,7 @@ static void free_buffer_page(struct ion_system_heap *heap,
	bool prefetch = buffer->flags & ION_FLAG_POOL_PREFETCH;
	int vmid = get_secure_vmid(buffer->flags);

	if (!(buffer->private_flags & ION_PRIV_FLAG_SHRINKER_FREE) &&
	    !(buffer->flags & ION_FLAG_POOL_FORCE_ALLOC)) {
	if (!(buffer->flags & ION_FLAG_POOL_FORCE_ALLOC)) {
		struct ion_page_pool *pool;
		if (vmid > 0)
			pool = heap->secure_pools[vmid][order_to_index(order)];