On Tue, May 16, 2023 at 03:57:52PM +0800, Jia Jie Ho wrote: > > +static struct akcipher_alg starfive_rsa = { > + .encrypt = starfive_rsa_enc, > + .decrypt = starfive_rsa_dec, > + .sign = starfive_rsa_dec, > + .verify = starfive_rsa_enc, > + .set_pub_key = starfive_rsa_set_pub_key, > + .set_priv_key = starfive_rsa_set_priv_key, > + .max_size = starfive_rsa_max_size, > + .init = starfive_rsa_init_tfm, > + .exit = starfive_rsa_exit_tfm, > + .base = { > + .cra_name = "rsa", > + .cra_driver_name = "starfive-rsa", > + .cra_flags = CRYPTO_ALG_TYPE_AKCIPHER | > + CRYPTO_ALG_ASYNC | Why did you set the ASYNC flag? Your implementation appears to be completely synchronous. Cheers, -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt