crypto: ahash - Use GFP_KERNEL on allocation if the request can sleep

ahash_op_unaligned() and ahash_def_finup() allocate memory atomically,
regardless whether the request can sleep or not. This patch changes
this to use GFP_KERNEL if the request can sleep.

Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Steffen Klassert 2009-07-24 13:56:31 +08:00 committed by Herbert Xu
parent f592682f9f
commit 5befbd5a7e

View file

@ -223,7 +223,7 @@ static int ahash_op_unaligned(struct ahash_request *req,
priv = kmalloc(sizeof(*priv) + ahash_align_buffer_size(ds, alignmask), priv = kmalloc(sizeof(*priv) + ahash_align_buffer_size(ds, alignmask),
(req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) ? (req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) ?
GFP_ATOMIC : GFP_ATOMIC); GFP_KERNEL : GFP_ATOMIC);
if (!priv) if (!priv)
return -ENOMEM; return -ENOMEM;
@ -333,7 +333,7 @@ static int ahash_def_finup(struct ahash_request *req)
priv = kmalloc(sizeof(*priv) + ahash_align_buffer_size(ds, alignmask), priv = kmalloc(sizeof(*priv) + ahash_align_buffer_size(ds, alignmask),
(req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) ? (req->base.flags & CRYPTO_TFM_REQ_MAY_SLEEP) ?
GFP_ATOMIC : GFP_ATOMIC); GFP_KERNEL : GFP_ATOMIC);
if (!priv) if (!priv)
return -ENOMEM; return -ENOMEM;