• Herbert Xu's avatar
    crypto: api - Fix liveliness check in crypto_alg_tested · b81e286b
    Herbert Xu authored
    As algorithm testing is carried out without holding the main crypto
    lock, it is always possible for the algorithm to go away during the
    test.
    
    So before crypto_alg_tested updates the status of the tested alg,
    it checks whether it's still on the list of all algorithms.  This
    is inaccurate because it may be off the main list but still on the
    list of algorithms to be removed.
    
    Updating the algorithm status is safe per se as the larval still
    holds a reference to it.  However, killing spawns of other algorithms
    that are of lower priority is clearly a deficiency as it adds
    unnecessary churn.
    
    Fix the test by checking whether the algorithm is dead.
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    b81e286b
algapi.c 23.7 KB