OSDN Git Service

FROMLIST: android: binder: Drop lru lock in isolate callback
authorSherry Yang <sherryy@android.com>
Fri, 8 Sep 2017 06:09:26 +0000 (02:09 -0400)
committerSherry Yang <sherryy@android.com>
Thu, 21 Sep 2017 00:37:31 +0000 (20:37 -0400)
commit849c7764d8081c029cd7d5d2a5f9ace1a4bd084f
treec52a10b24e89a67c49759be26626783b7f5da300
parent9cfefbcfaab85139d3b5515d971d487f02d424e8
FROMLIST: android: binder: Drop lru lock in isolate callback

(from https://patchwork.kernel.org/patch/9945123/)

Drop the global lru lock in isolate callback
before calling zap_page_range which calls
cond_resched, and re-acquire the global lru
lock before returning. Also change return
code to LRU_REMOVED_RETRY.

Use mmput_async when fail to acquire mmap sem
in an atomic context.

Fix "BUG: sleeping function called from invalid context"
errors when CONFIG_DEBUG_ATOMIC_SLEEP is enabled.

Bug: 63926541
Change-Id: I45dbada421b715abed9a66d03d30ae2285671ca1
Fixes: f2517eb76f1f2 ("android: binder: Add global lru shrinker to binder")
Reported-by: Kyle Yan <kyan@codeaurora.org>
Acked-by: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Sherry Yang <sherryy@android.com>
drivers/android/binder_alloc.c