caam_remove already removes the debugfs entry, so we need to remove the one immediately before calling caam_remove.
This fix a NULL dereference at error paths is caam_probe fail.
Fixes: 67c2315def06 ("crypto: caam - add Queue Interface (QI) backend support")
Tested-by: Ryan Harkin ryan.harkin@linaro.org Cc: "Horia Geantă" horia.geanta@nxp.com Cc: Aymen Sghaier aymen.sghaier@nxp.com Cc: Fabio Estevam fabio.estevam@nxp.com Cc: Peng Fan peng.fan@nxp.com Cc: "David S. Miller" davem@davemloft.net Cc: Lukas Auer lukas.auer@aisec.fraunhofer.de Cc: stable@vger.kernel.org # 4.12+ Reviewed-by: Horia Geantă horia.geanta@nxp.com Signed-off-by: Rui Miguel Silva rui.silva@linaro.org --- drivers/crypto/caam/ctrl.c | 3 --- 1 file changed, 3 deletions(-)
diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c index e843cf410373..361e750f9cba 100644 --- a/drivers/crypto/caam/ctrl.c +++ b/drivers/crypto/caam/ctrl.c @@ -815,9 +815,6 @@ static int caam_probe(struct platform_device *pdev) return 0;
caam_remove: -#ifdef CONFIG_DEBUG_FS - debugfs_remove_recursive(ctrlpriv->dfs_root); -#endif caam_remove(pdev); return ret;