| From: Sergey Senozhatsky <senozhatsky@chromium.org> |
| Subject: zram: free secondary algorithms names |
| Date: Wed, 11 Sep 2024 11:54:56 +0900 |
| |
| We need to kfree() secondary algorithms names when reset zram device that |
| had multi-streams, otherwise we leak memory. |
| |
| [senozhatsky@chromium.org: kfree(NULL) is legal] |
| Link: https://lkml.kernel.org/r/20240917013021.868769-1-senozhatsky@chromium.org |
| Link: https://lkml.kernel.org/r/20240911025600.3681789-1-senozhatsky@chromium.org |
| Fixes: 001d92735701 ("zram: add recompression algorithm sysfs knob") |
| Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org> |
| Cc: Minchan Kim <minchan@kernel.org> |
| Cc: <stable@vger.kernel.org> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| --- |
| |
| drivers/block/zram/zram_drv.c | 5 +++++ |
| 1 file changed, 5 insertions(+) |
| |
| --- a/drivers/block/zram/zram_drv.c~zram-free-secondary-algorithms-names |
| +++ a/drivers/block/zram/zram_drv.c |
| @@ -2112,6 +2112,11 @@ static void zram_destroy_comps(struct zr |
| zram->num_active_comps--; |
| } |
| |
| + for (prio = ZRAM_SECONDARY_COMP; prio < ZRAM_MAX_COMPS; prio++) { |
| + kfree(zram->comp_algs[prio]); |
| + zram->comp_algs[prio] = NULL; |
| + } |
| + |
| zram_comp_params_reset(zram); |
| } |
| |
| _ |