diff --git a/crypto/ahash.c b/crypto/ahash.c
index 1576f95f9afe7d6d8832e6a4cb3c47ab82ca7f80..a196055b73d3d87cf5c14ee102ab979326a72043 100644
--- a/crypto/ahash.c
+++ b/crypto/ahash.c
@@ -145,7 +145,7 @@ static int ahash_setkey_unaligned(struct crypto_ahash *tfm, const u8 *key,
 	unsigned long absize;
 
 	absize = keylen + alignmask;
-	buffer = kmalloc(absize, GFP_ATOMIC);
+	buffer = kmalloc(absize, GFP_KERNEL);
 	if (!buffer)
 		return -ENOMEM;