From: Shijith Thotton <sthotton@marvell.com>
To: Arnaud Ebalard <arno@natisbad.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
Boris Brezillon <bbrezillon@kernel.org>
Cc: Shijith Thotton <sthotton@marvell.com>,
<linux-crypto@vger.kernel.org>, <jerinj@marvell.com>,
<sgoutham@marvell.com>, Srujana Challa <schalla@marvell.com>,
"David S. Miller" <davem@davemloft.net>,
chiminghao <chi.minghao@zte.com.cn>,
Ovidiu Panait <ovidiu.panait@windriver.com>,
"Suheil Chandran" <schandran@marvell.com>,
Lukasz Bartosik <lbartosik@marvell.com>,
open list <linux-kernel@vger.kernel.org>
Subject: [PATCH v2] crypto: octeontx2: fix NULL pointer dereference
Date: Fri, 21 Jan 2022 23:13:23 +0530 [thread overview]
Message-ID: <3ef09bf0c4adf7bc33f01f60cb8ce96e8f77b58c.1642786900.git.sthotton@marvell.com> (raw)
In-Reply-To: <3ff70ee925aad3afa1adc4ad1f4a7a494929d400.1642773756.git.sthotton@marvell.com>
CONFIG_DM_CRYPT is checked before registering ciphers, but not before
unregister. This could lead to a NULL pointer dereference during driver
release (in unregister) if CONFIG_DM_CRYPT is enabled.
...
Unable to handle kernel NULL pointer dereference at virtual address 0000000000000008
...
Call trace:
crypto_unregister_alg+0x68/0xfc
crypto_unregister_skciphers+0x44/0x60
otx2_cpt_crypto_exit+0x100/0x1a0
otx2_cptvf_remove+0xf8/0x200
pci_device_remove+0x3c/0xd4
__device_release_driver+0x188/0x234
device_release_driver+0x2c/0x4c
...
Added a CONFIG_DM_CRYPT check, similar to register, in unregister to
avoid this.
Fixes: 6f03f0e8b6c8 ("crypto: octeontx2 - register with linux crypto framework")
Signed-off-by: Shijith Thotton <sthotton@marvell.com>
---
v2:
- Added fixes line to commit message.
drivers/crypto/marvell/octeontx2/otx2_cptvf_algs.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/crypto/marvell/octeontx2/otx2_cptvf_algs.c b/drivers/crypto/marvell/octeontx2/otx2_cptvf_algs.c
index 2748a3327e39..620fa9b23e78 100644
--- a/drivers/crypto/marvell/octeontx2/otx2_cptvf_algs.c
+++ b/drivers/crypto/marvell/octeontx2/otx2_cptvf_algs.c
@@ -1650,7 +1650,7 @@ static inline int cpt_register_algs(void)
err = crypto_register_aeads(otx2_cpt_aeads,
ARRAY_SIZE(otx2_cpt_aeads));
- if (err) {
+ if (err && !IS_ENABLED(CONFIG_DM_CRYPT)) {
crypto_unregister_skciphers(otx2_cpt_skciphers,
ARRAY_SIZE(otx2_cpt_skciphers));
return err;
@@ -1661,8 +1661,9 @@ static inline int cpt_register_algs(void)
static inline void cpt_unregister_algs(void)
{
- crypto_unregister_skciphers(otx2_cpt_skciphers,
- ARRAY_SIZE(otx2_cpt_skciphers));
+ if (!IS_ENABLED(CONFIG_DM_CRYPT))
+ crypto_unregister_skciphers(otx2_cpt_skciphers,
+ ARRAY_SIZE(otx2_cpt_skciphers));
crypto_unregister_aeads(otx2_cpt_aeads, ARRAY_SIZE(otx2_cpt_aeads));
}
--
2.25.1
next prev parent reply other threads:[~2022-01-21 17:44 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-21 14:03 [PATCH] crypto: octeontx2: fix NULL pointer dereference Shijith Thotton
2022-01-21 17:43 ` Shijith Thotton [this message]
2022-01-28 5:43 ` [PATCH v2] " Herbert Xu
2022-01-28 11:19 ` [EXT] " Shijith Thotton
2022-01-28 13:57 ` [PATCH v3] crypto: octeontx2: remove CONFIG_DM_CRYPT check Shijith Thotton
2022-02-05 4:32 ` Herbert Xu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3ef09bf0c4adf7bc33f01f60cb8ce96e8f77b58c.1642786900.git.sthotton@marvell.com \
--to=sthotton@marvell.com \
--cc=arno@natisbad.org \
--cc=bbrezillon@kernel.org \
--cc=chi.minghao@zte.com.cn \
--cc=davem@davemloft.net \
--cc=herbert@gondor.apana.org.au \
--cc=jerinj@marvell.com \
--cc=lbartosik@marvell.com \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ovidiu.panait@windriver.com \
--cc=schalla@marvell.com \
--cc=schandran@marvell.com \
--cc=sgoutham@marvell.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.