linux-sg2042/drivers/crypto
Horia Geantă 7459e1d25f crypto: caam - fix signals handling
Driver does not properly handle the case when signals interrupt
wait_for_completion_interruptible():
-it does not check for return value
-completion structure is allocated on stack; in case a signal interrupts
the sleep, it will go out of scope, causing the worker thread
(caam_jr_dequeue) to fail when it accesses it

wait_for_completion_interruptible() is replaced with uninterruptable
wait_for_completion().
We choose to block all signals while waiting for I/O (device executing
the split key generation job descriptor) since the alternative - in
order to have a deterministic device state - would be to flush the job
ring (aborting *all* in-progress jobs).

Cc: <stable@vger.kernel.org>
Fixes: 045e36780f ("crypto: caam - ahash hmac support")
Fixes: 4c1ec1f930 ("crypto: caam - refactor key_gen, sg")
Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2017-07-12 18:38:04 +08:00
..
amcc crypto: crypto4xx - fix an error code 2017-06-20 11:21:14 +08:00
bcm crypto: brcm - fix spelling mistake: "fallbck" -> "fallback" 2017-06-19 14:19:52 +08:00
caam crypto: caam - fix signals handling 2017-07-12 18:38:04 +08:00
cavium crypto: cavium/nitrox - dma_mapping_error() returns bool 2017-06-22 16:54:08 +08:00
ccp crypto: ccp - Release locks before returning 2017-06-22 16:54:09 +08:00
chelsio crypto: chcr - Select device in Round Robin fashion 2017-06-20 11:21:40 +08:00
inside-secure crypto: inside-secure - use the base_end pointer in ring rollback 2017-06-20 11:21:48 +08:00
marvell crypto: marvell - Use IPAD/OPAD constant 2017-05-23 12:52:07 +08:00
mediatek crypto: mediatek - drop .owner field in mtk_crypto_driver 2017-06-19 14:11:50 +08:00
nx crypto: nx - drop duplicate header types.h 2016-11-17 23:34:55 +08:00
qat crypto: qat - comply with crypto_akcipher_maxsize() 2017-06-10 12:04:31 +08:00
qce crypto: qce - Use skcipher for fallback 2016-07-01 23:45:09 +08:00
rockchip crypto: rockchip - use devm_add_action_or_reset() 2016-08-24 21:07:11 +08:00
stm32 crypto: stm32 - Fix OF module alias information 2017-04-30 01:45:21 +08:00
sunxi-ss crypto: sun4i-ss - fix large block size support 2017-06-19 14:19:52 +08:00
ux500 scripts/spelling.txt: add "disble(d)" pattern and fix typo instances 2017-03-09 17:01:09 -08:00
virtio virtio: wrap find_vqs 2017-05-02 23:41:42 +03:00
vmx crypto: vmx - remove unnecessary check 2017-06-20 11:21:49 +08:00
Kconfig crypto: cavium - Add support for CNN55XX adapters. 2017-06-10 12:04:33 +08:00
Makefile crypto: cavium - Add support for CNN55XX adapters. 2017-06-10 12:04:33 +08:00
atmel-aes-regs.h crypto: atmel-authenc - add support to authenc(hmac(shaX), Y(aes)) modes 2017-02-03 18:16:14 +08:00
atmel-aes.c crypto: atmel-authenc - add support to authenc(hmac(shaX), Y(aes)) modes 2017-02-03 18:16:14 +08:00
atmel-authenc.h crypto: atmel-authenc - add support to authenc(hmac(shaX), Y(aes)) modes 2017-02-03 18:16:14 +08:00
atmel-sha-regs.h crypto: atmel-authenc - add support to authenc(hmac(shaX), Y(aes)) modes 2017-02-03 18:16:14 +08:00
atmel-sha.c crypto: atmel-sha - fix error management in atmel_sha_start() 2017-02-15 13:23:33 +08:00
atmel-tdes-regs.h
atmel-tdes.c crypto: atmel - fix 64-bit build warnings 2017-02-11 17:52:29 +08:00
bfin_crc.c crypto: bfin_crc - Fix format printing warning 2016-12-27 17:50:51 +08:00
bfin_crc.h crypto: bfin_crc - Remove unneeded linux/miscdevice.h include 2016-12-27 17:50:51 +08:00
exynos-rng.c crypto: exynos - Add new Exynos RNG driver 2017-04-21 20:30:46 +08:00
geode-aes.c
geode-aes.h
hifn_795x.c crypto: squash lines for simple wrapper functions 2016-09-13 20:27:26 +08:00
img-hash.c crypto: img-hash - Handle return value of clk_prepare_enable 2017-05-23 12:52:03 +08:00
ixp4xx_crypto.c crypto: ixp4xx - Use IPAD/OPAD constant 2017-05-23 12:52:07 +08:00
mv_cesa.c crypto: mv_cesa - Use IPAD/OPAD constant 2017-05-23 12:52:08 +08:00
mv_cesa.h
mxc-scc.c crypto: mxc-scc - check clk_prepare_enable() error 2016-08-24 21:04:50 +08:00
mxs-dcp.c crypto: mxs-dcp - Use skcipher for fallback 2016-07-01 23:45:08 +08:00
n2_asm.S
n2_core.c crypto: n2 - make of_device_ids const 2017-06-20 11:21:48 +08:00
n2_core.h
omap-aes-gcm.c crypto: omap-aes - fix spelling mistake "Encryptio" -> "Encryption" 2017-06-20 11:21:29 +08:00
omap-aes.c crypto: omap-aes - Add support for GCM mode 2017-06-10 12:04:19 +08:00
omap-aes.h crypto: omap-aes - Add support for GCM mode 2017-06-10 12:04:19 +08:00
omap-crypto.c crypto: omap - add base support library for common routines 2017-06-10 12:04:15 +08:00
omap-crypto.h crypto: omap - add base support library for common routines 2017-06-10 12:04:15 +08:00
omap-des.c crypto: omap-des - use base omap crypto support library 2017-06-10 12:04:16 +08:00
omap-sham.c crypto: omap-sham - force word alignment on the xmit-buf also 2017-06-10 12:04:20 +08:00
padlock-aes.c x86/fpu: Remove irq_ts_save() and irq_ts_restore() 2016-11-01 07:47:54 +01:00
padlock-sha.c x86/fpu: Remove irq_ts_save() and irq_ts_restore() 2016-11-01 07:47:54 +01:00
picoxcell_crypto.c crypto: picoxcell - Remove spacc_is_compatible() wrapper function 2017-01-13 00:24:41 +08:00
picoxcell_crypto_regs.h
s5p-sss.c crypto: s5p-sss - Document the struct s5p_aes_dev 2017-03-24 22:03:00 +08:00
sahara.c crypto: sahara - fix typo "Decidated" -> "Dedicated" 2016-11-01 08:37:12 +08:00
talitos.c crypto: talitos - Extend max key length for SHA384/512-HMAC and AEAD 2017-06-19 14:11:44 +08:00
talitos.h