ion: fix page pool cache policy
authorAmit Pundir <amit.pundir@linaro.org>
Mon, 18 Jan 2016 19:47:30 +0000 (01:17 +0530)
committerJohn Stultz <john.stultz@linaro.org>
Tue, 16 Feb 2016 21:53:59 +0000 (13:53 -0800)
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 <puck.chen@hisilicon.com>
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
drivers/staging/android/ion/ion_system_heap.c

index fa62cc433d488edcf6d6f956164c4324a49be40f..57d115d0f1791f68ff2c277f97c63b6b69bfe6eb 100644 (file)
@@ -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);