dm clone: call kmem_cache_destroy() in dm_clone_init() error path
authorMike Snitzer <snitzer@kernel.org>
Tue, 4 Apr 2023 15:59:00 +0000 (11:59 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 11 May 2023 14:03:41 +0000 (23:03 +0900)
commit 6827af4a9a9f5bb664c42abf7c11af4978d72201 upstream.

Otherwise the _hydration_cache will leak if dm_register_target() fails.

Cc: stable@vger.kernel.org
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/md/dm-clone-target.c

index 29e0b85..e088081 100644 (file)
@@ -2205,6 +2205,7 @@ static int __init dm_clone_init(void)
        r = dm_register_target(&clone_target);
        if (r < 0) {
                DMERR("Failed to register clone target");
+               kmem_cache_destroy(_hydration_cache);
                return r;
        }