Lines Matching refs:larval
187 struct crypto_larval *larval; in __crypto_register_alg() local
218 larval = crypto_larval_alloc(alg->cra_name, in __crypto_register_alg()
220 if (IS_ERR(larval)) in __crypto_register_alg()
224 larval->adult = crypto_mod_get(alg); in __crypto_register_alg()
225 if (!larval->adult) in __crypto_register_alg()
228 atomic_set(&larval->alg.cra_refcnt, 1); in __crypto_register_alg()
229 memcpy(larval->alg.cra_driver_name, alg->cra_driver_name, in __crypto_register_alg()
231 larval->alg.cra_priority = alg->cra_priority; in __crypto_register_alg()
234 list_add(&larval->alg.cra_list, &crypto_alg_list); in __crypto_register_alg()
237 return larval; in __crypto_register_alg()
240 kfree(larval); in __crypto_register_alg()
242 larval = ERR_PTR(ret); in __crypto_register_alg()
283 struct crypto_larval *larval = (void *)q; in crypto_alg_tested() local
294 if (larval->adult) in crypto_alg_tested()
296 if ((q->cra_flags ^ alg->cra_flags) & larval->mask) in crypto_alg_tested()
301 larval->adult = alg; in crypto_alg_tested()
337 static void crypto_wait_for_test(struct crypto_larval *larval) in crypto_wait_for_test() argument
341 err = crypto_probing_notify(CRYPTO_MSG_ALG_REGISTER, larval->adult); in crypto_wait_for_test()
345 crypto_alg_tested(larval->alg.cra_driver_name, 0); in crypto_wait_for_test()
348 err = wait_for_completion_killable(&larval->completion); in crypto_wait_for_test()
352 crypto_larval_kill(&larval->alg); in crypto_wait_for_test()
357 struct crypto_larval *larval; in crypto_register_alg() local
365 larval = __crypto_register_alg(alg); in crypto_register_alg()
368 if (IS_ERR(larval)) in crypto_register_alg()
369 return PTR_ERR(larval); in crypto_register_alg()
371 crypto_wait_for_test(larval); in crypto_register_alg()
529 struct crypto_larval *larval; in crypto_register_instance() local
544 larval = __crypto_register_alg(&inst->alg); in crypto_register_instance()
545 if (IS_ERR(larval)) in crypto_register_instance()
554 err = PTR_ERR(larval); in crypto_register_instance()
555 if (IS_ERR(larval)) in crypto_register_instance()
558 crypto_wait_for_test(larval); in crypto_register_instance()