binder: malloc new_buffer outside of locks
authorCarlos Llamas <cmllamas@google.com>
Fri, 1 Dec 2023 17:21:46 +0000 (17:21 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 5 Dec 2023 00:23:39 +0000 (09:23 +0900)
commitc7ac30fad18231a1637d38aa8a97d6b4788ed8ad
tree64cd11bd18140c87f25f61fada79dcff525a36cb
parentea2735ce19c1c6ce0f6011f813a1eea0272c231d
binder: malloc new_buffer outside of locks

Preallocate new_buffer before acquiring the alloc->mutex and hand it
down to binder_alloc_new_buf_locked(). The new buffer will be used in
the vast majority of requests (measured at 98.2% in field data). The
buffer is discarded otherwise. This change is required in preparation
for transitioning alloc->mutex into a spinlock in subsequent commits.

Signed-off-by: Carlos Llamas <cmllamas@google.com>
Reviewed-by: Alice Ryhl <aliceryhl@google.com>
Link: https://lore.kernel.org/r/20231201172212.1813387-18-cmllamas@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/android/binder_alloc.c