linux/drivers/android
Carlos Llamas 37ebbb4f73 binder: perform page installation outside of locks
Split out the insertion of pages to be outside of the alloc->mutex in a
separate binder_install_buffer_pages() routine. Since this is no longer
serialized, we must look at the full range of pages used by the buffers.
The installation is protected with mmap_sem in write mode since multiple
tasks might race to install the same page.

Besides avoiding unnecessary nested locking this helps in preparation of
switching the alloc->mutex into a spinlock_t in subsequent patches.

Signed-off-by: Carlos Llamas <cmllamas@google.com>
Reviewed-by: Alice Ryhl <aliceryhl@google.com>
Link: https://lore.kernel.org/r/20231201172212.1813387-20-cmllamas@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-12-05 09:23:40 +09:00
..
binder_alloc_selftest.c binder: remove pid param in binder_alloc_new_buf() 2023-12-05 09:23:39 +09:00
binder_alloc.c binder: perform page installation outside of locks 2023-12-05 09:23:40 +09:00
binder_alloc.h binder: remove pid param in binder_alloc_new_buf() 2023-12-05 09:23:39 +09:00
binder_internal.h Binder: Add async from to transaction record 2023-05-13 20:38:12 +09:00
binder_trace.h binder: keep vma addresses type as unsigned long 2023-12-05 09:23:38 +09:00
binder.c binder: remove pid param in binder_alloc_new_buf() 2023-12-05 09:23:39 +09:00
binderfs.c Char/Misc and other driver changes for 6.7-rc1 2023-11-03 14:51:08 -10:00
Kconfig remove CONFIG_ANDROID 2022-07-01 10:41:09 +02:00
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00