binder: convert logging macros into functions
authorCarlos Llamas <cmllamas@google.com>
Fri, 29 Apr 2022 23:56:43 +0000 (23:56 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 9 May 2022 13:43:24 +0000 (15:43 +0200)
commit06a3494ef61a9c67a5be068a74bc5d3ab9d72a4c
tree1564f4632ac792e7bec073f02fee208e9bd7c69d
parentd23386ed7019d50164fa2066aae8656097a02425
binder: convert logging macros into functions

Converting binder_debug() and binder_user_error() macros into functions
reduces the overall object size by 16936 bytes when cross-compiled with
aarch64-linux-gnu-gcc 11.2.0:

$ size drivers/android/binder.o.{old,new}
   text    data     bss     dec     hex filename
  77935    6168   20264  104367   197af drivers/android/binder.o.old
  65551    1616   20264   87431   15587 drivers/android/binder.o.new

This is particularly beneficial to functions binder_transaction() and
binder_thread_write() which repeatedly use these macros and are both
part of the critical path for all binder transactions.

$ nm --size vmlinux.{old,new} |grep ' binder_transaction$'
0000000000002f60 t binder_transaction
0000000000002358 t binder_transaction

$ nm --size vmlinux.{old,new} |grep binder_thread_write
0000000000001c54 t binder_thread_write
00000000000014a8 t binder_thread_write

Acked-by: Christian Brauner (Microsoft) <brauner@kernel.org>
Acked-by: Todd Kjos <tkjos@google.com>
Signed-off-by: Carlos Llamas <cmllamas@google.com>
Link: https://lore.kernel.org/r/20220429235644.697372-5-cmllamas@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/android/binder.c