Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

crypto: engine - Use unregister_* in register_{aeads,ahashes,skciphers}

Replace the for loops with calls to unregister_aeads(),
unregister_ahashes(), and unregister_skciphers(), respectively. Return
'ret' immediately and remove the goto statements to simplify the error
handling code. No functional changes.

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

authored by

Thorsten Blum and committed by
Herbert Xu
1ccc00d7 32adff68

+12 -21
+12 -21
crypto/crypto_engine.c
··· 524 524 525 525 for (i = 0; i < count; i++) { 526 526 ret = crypto_engine_register_aead(&algs[i]); 527 - if (ret) 528 - goto err; 527 + if (ret) { 528 + crypto_engine_unregister_aeads(algs, i); 529 + return ret; 530 + } 529 531 } 530 532 531 533 return 0; 532 - 533 - err: 534 - crypto_engine_unregister_aeads(algs, i); 535 - 536 - return ret; 537 534 } 538 535 EXPORT_SYMBOL_GPL(crypto_engine_register_aeads); 539 536 ··· 563 566 564 567 for (i = 0; i < count; i++) { 565 568 ret = crypto_engine_register_ahash(&algs[i]); 566 - if (ret) 567 - goto err; 569 + if (ret) { 570 + crypto_engine_unregister_ahashes(algs, i); 571 + return ret; 572 + } 568 573 } 569 574 570 575 return 0; 571 - 572 - err: 573 - crypto_engine_unregister_ahashes(algs, i); 574 - 575 - return ret; 576 576 } 577 577 EXPORT_SYMBOL_GPL(crypto_engine_register_ahashes); 578 578 ··· 632 638 633 639 for (i = 0; i < count; i++) { 634 640 ret = crypto_engine_register_skcipher(&algs[i]); 635 - if (ret) 636 - goto err; 641 + if (ret) { 642 + crypto_engine_unregister_skciphers(algs, i); 643 + return ret; 644 + } 637 645 } 638 646 639 647 return 0; 640 - 641 - err: 642 - crypto_engine_unregister_skciphers(algs, i); 643 - 644 - return ret; 645 648 } 646 649 EXPORT_SYMBOL_GPL(crypto_engine_register_skciphers); 647 650