Some algorithms initialize their .cra_list prior to registration.
But this is unnecessary since crypto_register_alg() will overwrite
.cra_list when adding the algorithm to the 'crypto_alg_list'.
Apparently the useless assignment has just been copy+pasted around.
So, remove the useless assignments.
Exception: paes_s390.c uses cra_list to check whether the algorithm is
registered or not, so I left that as-is for now.
This patch shouldn't change any actual behavior.
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
 
 static int __init aes_sparc64_mod_init(void)
 {
-       int i;
-
-       for (i = 0; i < ARRAY_SIZE(algs); i++)
-               INIT_LIST_HEAD(&algs[i].cra_list);
-
        if (sparc64_has_aes_opcode()) {
                pr_info("Using sparc64 aes opcodes optimized AES implementation\n");
                return crypto_register_algs(algs, ARRAY_SIZE(algs));
 
 
 static int __init camellia_sparc64_mod_init(void)
 {
-       int i;
-
-       for (i = 0; i < ARRAY_SIZE(algs); i++)
-               INIT_LIST_HEAD(&algs[i].cra_list);
-
        if (sparc64_has_camellia_opcode()) {
                pr_info("Using sparc64 camellia opcodes optimized CAMELLIA implementation\n");
                return crypto_register_algs(algs, ARRAY_SIZE(algs));
 
 
 static int __init des_sparc64_mod_init(void)
 {
-       int i;
-
-       for (i = 0; i < ARRAY_SIZE(algs); i++)
-               INIT_LIST_HEAD(&algs[i].cra_list);
-
        if (sparc64_has_des_opcode()) {
                pr_info("Using sparc64 des opcodes optimized DES implementation\n");
                return crypto_register_algs(algs, ARRAY_SIZE(algs));
 
        .cra_flags              = CRYPTO_ALG_TYPE_COMPRESS,
        .cra_ctxsize            = sizeof(struct lz4_ctx),
        .cra_module             = THIS_MODULE,
-       .cra_list               = LIST_HEAD_INIT(alg_lz4.cra_list),
        .cra_init               = lz4_init,
        .cra_exit               = lz4_exit,
        .cra_u                  = { .compress = {
 
        .cra_flags              = CRYPTO_ALG_TYPE_COMPRESS,
        .cra_ctxsize            = sizeof(struct lz4hc_ctx),
        .cra_module             = THIS_MODULE,
-       .cra_list               = LIST_HEAD_INIT(alg_lz4hc.cra_list),
        .cra_init               = lz4hc_init,
        .cra_exit               = lz4hc_exit,
        .cra_u                  = { .compress = {
 
        crypto->cra_priority = cipher_pri;
        crypto->cra_alignmask = 0;
        crypto->cra_ctxsize = sizeof(struct iproc_ctx_s);
-       INIT_LIST_HEAD(&crypto->cra_list);
 
        crypto->cra_init = ablkcipher_cra_init;
        crypto->cra_exit = generic_cra_exit;
        aead->base.cra_priority = aead_pri;
        aead->base.cra_alignmask = 0;
        aead->base.cra_ctxsize = sizeof(struct iproc_ctx_s);
-       INIT_LIST_HEAD(&aead->base.cra_list);
 
        aead->base.cra_flags |= CRYPTO_ALG_ASYNC;
        /* setkey set in alg initialization */
 
                                algp = &dd->pdata->algs_info[i].algs_list[j];
 
                                pr_debug("reg alg: %s\n", algp->cra_name);
-                               INIT_LIST_HEAD(&algp->cra_list);
 
                                err = crypto_register_alg(algp);
                                if (err)
                        algp = &aalg->base;
 
                        pr_debug("reg alg: %s\n", algp->cra_name);
-                       INIT_LIST_HEAD(&algp->cra_list);
 
                        err = crypto_register_aead(aalg);
                        if (err)
 
                        algp = &dd->pdata->algs_info[i].algs_list[j];
 
                        pr_debug("reg alg: %s\n", algp->cra_name);
-                       INIT_LIST_HEAD(&algp->cra_list);
 
                        err = crypto_register_alg(algp);
                        if (err)
 
        alg->cra_module = THIS_MODULE;
        alg->cra_init = qce_ablkcipher_init;
        alg->cra_exit = qce_ablkcipher_exit;
-       INIT_LIST_HEAD(&alg->cra_list);
 
        INIT_LIST_HEAD(&tmpl->entry);
        tmpl->crypto_alg_type = CRYPTO_ALG_TYPE_ABLKCIPHER;
 
        base->cra_alignmask = 0;
        base->cra_module = THIS_MODULE;
        base->cra_init = qce_ahash_cra_init;
-       INIT_LIST_HEAD(&base->cra_list);
 
        snprintf(base->cra_name, CRYPTO_MAX_ALG_NAME, "%s", def->name);
        snprintf(base->cra_driver_name, CRYPTO_MAX_ALG_NAME, "%s",
 
        unsigned int i, j, k, l;
 
        for (i = 0; i < ARRAY_SIZE(aes_algs); i++) {
-               INIT_LIST_HEAD(&aes_algs[i].cra_list);
                err = crypto_register_alg(&aes_algs[i]);
                if (err)
                        goto err_aes_algs;