• Eric Biggers's avatar
    crypto: algapi - Avoid spurious modprobe on LOADED · beeb460c
    Eric Biggers authored
    Currently after any algorithm is registered and tested, there's an
    unnecessary request_module("cryptomgr") even if it's already loaded.
    Also, CRYPTO_MSG_ALG_LOADED is sent twice, and thus if the algorithm is
    "crct10dif", lib/crc-t10dif.c replaces the tfm twice rather than once.
    
    This occurs because CRYPTO_MSG_ALG_LOADED is sent using
    crypto_probing_notify(), which tries to load "cryptomgr" if the
    notification is not handled (NOTIFY_DONE).  This doesn't make sense
    because "cryptomgr" doesn't handle this notification.
    
    Fix this by using crypto_notify() instead of crypto_probing_notify().
    
    Fixes: dd8b083f ("crypto: api - Introduce notifier for new crypto algorithms")
    Cc: <stable@vger.kernel.org> # v4.20+
    Cc: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
    Reviewed-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    beeb460c
algapi.c 28.3 KB