diff options
| author | Qi Zheng <[email protected]> | 2023-06-25 15:49:37 +0000 |
|---|---|---|
| committer | Greg Kroah-Hartman <[email protected]> | 2023-08-04 13:25:01 +0000 |
| commit | adb9743d6a08778b78d62d16b4230346d3508986 (patch) | |
| tree | 743ebc43859968ed3e1861e04437fd1f67396316 /drivers/android/binder_alloc.c | |
| parent | Merge tag 'iio-fixes-for-6.5a' of https://git.kernel.org/pub/scm/linux/kernel... (diff) | |
| download | kernel-adb9743d6a08778b78d62d16b4230346d3508986.tar.gz kernel-adb9743d6a08778b78d62d16b4230346d3508986.zip | |
binder: fix memory leak in binder_init()
In binder_init(), the destruction of binder_alloc_shrinker_init() is not
performed in the wrong path, which will cause memory leaks. So this commit
introduces binder_alloc_shrinker_exit() and calls it in the wrong path to
fix that.
Signed-off-by: Qi Zheng <[email protected]>
Acked-by: Carlos Llamas <[email protected]>
Fixes: f2517eb76f1f ("android: binder: Add global lru shrinker to binder")
Cc: stable <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'drivers/android/binder_alloc.c')
| -rw-r--r-- | drivers/android/binder_alloc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/android/binder_alloc.c b/drivers/android/binder_alloc.c index 662a2a2e2e84..e3db8297095a 100644 --- a/drivers/android/binder_alloc.c +++ b/drivers/android/binder_alloc.c @@ -1087,6 +1087,12 @@ int binder_alloc_shrinker_init(void) return ret; } +void binder_alloc_shrinker_exit(void) +{ + unregister_shrinker(&binder_shrinker); + list_lru_destroy(&binder_alloc_lru); +} + /** * check_buffer() - verify that buffer/offset is safe to access * @alloc: binder_alloc for this proc |
