binder: reverse locking order in shrinker callback
authorCarlos Llamas <cmllamas@google.com>
Fri, 1 Dec 2023 17:21:56 +0000 (17:21 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 5 Dec 2023 00:23:41 +0000 (09:23 +0900)
commite50f4e6cc9bfaca655d3b6a3506d27cf2caa1d40
treeb06e69452b05c9ec524ca181604f55c038659478
parent162c79731448a5a052e93af7753df579dfe0bf7a
binder: reverse locking order in shrinker callback

The locking order currently requires the alloc->mutex to be acquired
first followed by the mmap lock. However, the alloc->mutex is converted
into a spinlock in subsequent commits so the order needs to be reversed
to avoid nesting the sleeping mmap lock under the spinlock.

The shrinker's callback binder_alloc_free_page() is the only place that
needs to be reordered since other functions have been refactored and no
longer nest these locks.

Some minor cosmetic changes are also included in this patch.

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