diff options
author | Gaosheng Cui <cuigaosheng1@huawei.com> | 2022-11-08 11:29:12 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-01-18 13:41:18 +0300 |
commit | a234815cee9edb37f9fba2e53b34d0a4926e7007 (patch) | |
tree | dea4f51f076e8fc3be193a4979beeaf35713d158 | |
parent | ca438aa466b8e5010219d3300f65bc8a984c4b0a (diff) | |
download | linux-a234815cee9edb37f9fba2e53b34d0a4926e7007.tar.xz |
crypto: ccree - Remove debugfs when platform_driver_register failed
[ Upstream commit 4f1c596df706c9aca662b6c214fad84047ae2a97 ]
When platform_driver_register failed, we need to remove debugfs,
which will caused a resource leak, fix it.
Failed logs as follows:
[ 32.606488] debugfs: Directory 'ccree' with parent '/' already present!
Fixes: 4c3f97276e15 ("crypto: ccree - introduce CryptoCell driver")
Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r-- | drivers/crypto/ccree/cc_driver.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/crypto/ccree/cc_driver.c b/drivers/crypto/ccree/cc_driver.c index 58ca59af0b2e..3d59fef1fbee 100644 --- a/drivers/crypto/ccree/cc_driver.c +++ b/drivers/crypto/ccree/cc_driver.c @@ -653,9 +653,17 @@ static struct platform_driver ccree_driver = { static int __init ccree_init(void) { + int rc; + cc_debugfs_global_init(); - return platform_driver_register(&ccree_driver); + rc = platform_driver_register(&ccree_driver); + if (rc) { + cc_debugfs_global_fini(); + return rc; + } + + return 0; } module_init(ccree_init); |