On Wed, 10 Jun 2020, Herbert Xu wrote: > On Tue, Jun 09, 2020 at 01:11:05PM -0400, Mikulas Patocka wrote: > > > > Do you have another idea how to solve this problem? > > I think the better approach would be to modify the drivers to not > allocate any memory. In general, any memory needed by the driver > to fulfil a request *should* be allocated within the crypto request > object. That's why we have the reqsize field to indicate how much > memory could be needed per request. > > Thanks, Yes, fixing the drivers would be the best - but you can hardly find any person who has all the crypto hardware and who is willing to rewrite all the drivers for it. Another possibility - I was thinking about setting CRYPTO_TFM_REQ_MAY_SLEEP in dm-crypt and calling the crypto function under memalloc_noio_save. But there are some drivers that do GFP_ATOMIC allocation regardless of CRYPTO_TFM_REQ_MAY_SLEEP. Mikulas