From e9db98677f921dc1604a6bf1de2e0b0e8f4f9ae5 Mon Sep 17 00:00:00 2001 From: Amit Pundir Date: Tue, 19 Jan 2016 01:17:30 +0530 Subject: [PATCH] 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 53a91c68fa7b, "staging: ion: Add private buffer flag to skip page pooling on free", and break the ION_PRIV_FLAG_SHRINKER_FREE private flag check logic. Change-Id: I9cee4bcc3545cf92e07c21c2b42d27cf88da3316 Reported-by: chenfeng Signed-off-by: Amit Pundir --- drivers/staging/android/ion/ion_system_heap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/android/ion/ion_system_heap.c b/drivers/staging/android/ion/ion_system_heap.c index fa62cc433d48..57d115d0f179 100644 --- a/drivers/staging/android/ion/ion_system_heap.c +++ b/drivers/staging/android/ion/ion_system_heap.c @@ -83,7 +83,7 @@ static void free_buffer_page(struct ion_system_heap *heap, unsigned int order = compound_order(page); bool cached = ion_buffer_cached(buffer); - if (!cached && !(buffer->private_flags & ION_PRIV_FLAG_SHRINKER_FREE)) { + if (!cached) { struct ion_page_pool *pool = heap->pools[order_to_index(order)]; if (buffer->private_flags & ION_PRIV_FLAG_SHRINKER_FREE) ion_page_pool_free_immediate(pool, page); -- 2.34.1