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 b286d8b1a6
("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: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
aa2be9b3d6
commit
07de4bc88c
|
@ -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;
|
||||||
|
|
Loading…
Reference in New Issue