Commit 07de4bc8 authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Herbert Xu

crypto: s5p-sss - Fix completing crypto request in IRQ handler

In a regular interrupt handler driver was finishing the crypt/decrypt
request by calling complete on crypto request.  This is disallowed since
converting to skcipher in commit b286d8b1 ("crypto: skcipher - Add
skcipher walk interface") and causes a warning:
	WARNING: CPU: 0 PID: 0 at crypto/skcipher.c:430 skcipher_walk_first+0x13c/0x14c

The interrupt is marked shared but in fact there are no other users
sharing it.  Thus the simplest solution seems to be to just use a
threaded interrupt handler, after converting it to oneshot.
Signed-off-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent aa2be9b3
...@@ -805,8 +805,9 @@ static int s5p_aes_probe(struct platform_device *pdev) ...@@ -805,8 +805,9 @@ static int s5p_aes_probe(struct platform_device *pdev)
dev_warn(dev, "feed control interrupt is not available.\n"); dev_warn(dev, "feed control interrupt is not available.\n");
goto err_irq; goto err_irq;
} }
err = devm_request_irq(dev, pdata->irq_fc, s5p_aes_interrupt, err = devm_request_threaded_irq(dev, pdata->irq_fc, NULL,
IRQF_SHARED, pdev->name, pdev); s5p_aes_interrupt, IRQF_ONESHOT,
pdev->name, pdev);
if (err < 0) { if (err < 0) {
dev_warn(dev, "feed control interrupt is not available.\n"); dev_warn(dev, "feed control interrupt is not available.\n");
goto err_irq; goto err_irq;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment