crypto: sun8i-ss - fix removal of module
authorCorentin Labbe <clabbe.montjoie@gmail.com>
Mon, 6 Jan 2020 19:28:52 +0000 (20:28 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 16 Jan 2020 07:18:12 +0000 (15:18 +0800)
Removing the driver cause an oops due to the fact we clean an extra
channel.
Let's give the right index to the cleaning function.
Fixes: f08fcced6d00 ("crypto: allwinner - Add sun8i-ss cryptographic offloader")

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c

index 90997cc..6b301af 100644 (file)
@@ -595,7 +595,7 @@ error_alg:
 error_irq:
        sun8i_ss_pm_exit(ss);
 error_pm:
-       sun8i_ss_free_flows(ss, MAXFLOW);
+       sun8i_ss_free_flows(ss, MAXFLOW - 1);
        return err;
 }
 
@@ -609,7 +609,7 @@ static int sun8i_ss_remove(struct platform_device *pdev)
        debugfs_remove_recursive(ss->dbgfs_dir);
 #endif
 
-       sun8i_ss_free_flows(ss, MAXFLOW);
+       sun8i_ss_free_flows(ss, MAXFLOW - 1);
 
        sun8i_ss_pm_exit(ss);