1
linux/drivers/crypto
Joel A Fernandes bbbaa37428 crypto: omap-aes - Use pm_runtime_put instead of pm_runtime_put_sync in tasklet
After DMA is complete, the omap_aes_finish_req function is called as
a part of the done_task tasklet. During this its atomic and any calls
to pm functions should not assume they wont sleep.

The patch replaces a call to pm_runtime_put_sync (which can sleep) with
pm_runtime_put thus fixing a kernel panic observed on AM33xx SoC during
AES operation.

Tested on an AM33xx SoC device (beaglebone board).
To reproduce the problem, I used the tcrypt kernel module as:
modprobe tcrypt sec=2 mode=500

Signed-off-by: Joel A Fernandes <joelagnel@ti.com>
Cc: David S. Miller <davem@davemloft.net>
Acked-by: Mark A. Greer <mgreer@animalcreek.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2013-03-10 16:46:44 +08:00
..
amcc crypto: crypto4xx - fix error return code 2012-09-27 13:32:15 +08:00
caam Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
nx Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
ux500 ARM: plat-nomadik: move DMA40 header to <linux/platform_data> 2012-11-05 09:55:32 +01:00
atmel-aes-regs.h crypto: atmel - add Atmel AES driver 2012-07-11 11:07:40 +08:00
atmel-aes.c crypto: atmel-aes - add support for latest release of the IP (0x130) 2013-03-10 16:46:42 +08:00
atmel-sha-regs.h crypto: atmel-sha - add support for latest release of the IP (0x410) 2013-03-10 16:46:42 +08:00
atmel-sha.c crypto: atmel-sha - add support for latest release of the IP (0x410) 2013-03-10 16:46:42 +08:00
atmel-tdes-regs.h crypto: atmel-tdes - add support for latest release of the IP (0x700) 2013-03-10 16:46:42 +08:00
atmel-tdes.c crypto: atmel-tdes - add support for latest release of the IP (0x700) 2013-03-10 16:46:42 +08:00
bfin_crc.c crypto: bfin_crc - Fix possible NULL pointer dereference 2013-03-10 16:46:43 +08:00
geode-aes.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
geode-aes.h
hifn_795x.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
ixp4xx_crypto.c IXP4xx crypto: MOD_AES{128,192,256} already include key size. 2012-11-22 03:36:15 +00:00
Kconfig crypto: atmel-sha - add support for latest release of the IP (0x410) 2013-03-10 16:46:42 +08:00
Makefile crypto: atmel - add Atmel SHA1/SHA256 driver 2012-07-11 11:08:28 +08:00
mv_cesa.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
mv_cesa.h
n2_asm.S crypto: n2 - Add Niagara2 crypto driver 2010-05-19 14:14:04 +10:00
n2_core.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
n2_core.h crypto: n2 - Add Niagara2 crypto driver 2010-05-19 14:14:04 +10:00
omap-aes.c crypto: omap-aes - Use pm_runtime_put instead of pm_runtime_put_sync in tasklet 2013-03-10 16:46:44 +08:00
omap-sham.c crypto: omap-sham - Use pm_runtime_put instead of pm_runtime_put_sync in tasklet 2013-03-10 16:46:44 +08:00
padlock-aes.c crypto: drivers - remove cra_list initialization 2012-08-01 17:47:28 +08:00
padlock-sha.c crypto: Add support for x86 cpuid auto loading for x86 crypto drivers 2012-01-26 16:48:10 -08:00
picoxcell_crypto_regs.h crypto: picoxcell - add support for the picoxcell crypto engines 2011-02-21 22:42:40 +11:00
picoxcell_crypto.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
s5p-sss.c crypto: s5p-sss - Use devm_clk_get() 2013-01-20 10:16:44 +11:00
talitos.c crypto: talitos - convert to use be16_add_cpu() 2012-10-15 22:18:26 +08:00
talitos.h crypto: talitos - add sha224, sha384 and sha512 to existing AEAD algorithms 2012-07-11 11:08:29 +08:00
tegra-aes.c Drivers: crypto: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
tegra-aes.h crypto: driver for Tegra AES hardware 2012-01-13 16:38:37 +11:00