android: binder: Don't get mm from task
authorSherry Yang <sherryy@android.com>
Sat, 21 Oct 2017 00:58:58 +0000 (20:58 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 21 Oct 2017 08:14:20 +0000 (10:14 +0200)
commita0c2baaf81bd53dc76fccdddc721ba7dbb62be21
tree0104ebfb31019168be252bc006e4689674cd8dcf
parent9d35593b4f0b89ab0c194349c7d357b3b159e99a
android: binder: Don't get mm from task

Use binder_alloc struct's mm_struct rather than getting
a reference to the mm struct through get_task_mm to
avoid a potential deadlock between lru lock, task lock and
dentry lock, since a thread can be holding the task lock
and the dentry lock while trying to acquire the lru lock.

Acked-by: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Sherry Yang <sherryy@android.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/android/binder_alloc.c
drivers/android/binder_alloc.h