]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path
authorMike Snitzer <snitzer@kernel.org>
Tue, 4 Apr 2023 17:34:28 +0000 (13:34 -0400)
committerMike Snitzer <snitzer@kernel.org>
Tue, 4 Apr 2023 17:39:25 +0000 (13:39 -0400)
Otherwise the journal_io_cache will leak if dm_register_target() fails.

Cc: stable@vger.kernel.org
Signed-off-by: Mike Snitzer <snitzer@kernel.org>
drivers/md/dm-integrity.c

index b0d5057fbdd988c06fb087e92e68b620c23a29db..54830b07b829af7f903edb2ec020094781f089cc 100644 (file)
@@ -4703,11 +4703,13 @@ static int __init dm_integrity_init(void)
        }
 
        r = dm_register_target(&integrity_target);
-
-       if (r < 0)
+       if (r < 0) {
                DMERR("register failed %d", r);
+               kmem_cache_destroy(journal_io_cache);
+               return r;
+       }
 
-       return r;
+       return 0;
 }
 
 static void __exit dm_integrity_exit(void)