linux/drivers/nfc
Eric Biggers 877b5691f2 crypto: shash - remove shash_desc::flags
The flags field in 'struct shash_desc' never actually does anything.
The only ostensibly supported flag is CRYPTO_TFM_REQ_MAY_SLEEP.
However, no shash algorithm ever sleeps, making this flag a no-op.

With this being the case, inevitably some users who can't sleep wrongly
pass MAY_SLEEP.  These would all need to be fixed if any shash algorithm
actually started sleeping.  For example, the shash_ahash_*() functions,
which wrap a shash algorithm with the ahash API, pass through MAY_SLEEP
from the ahash API to the shash API.  However, the shash functions are
called under kmap_atomic(), so actually they're assumed to never sleep.

Even if it turns out that some users do need preemption points while
hashing large buffers, we could easily provide a helper function
crypto_shash_update_large() which divides the data into smaller chunks
and calls crypto_shash_update() and cond_resched() for each chunk.  It's
not necessary to have a flag in 'struct shash_desc', nor is it necessary
to make individual shash algorithms aware of this at all.

Therefore, remove shash_desc::flags, and document that the
crypto_shash_*() functions can be called from any context.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2019-04-25 15:38:12 +08:00
..
fdp treewide: devm_kmalloc() -> devm_kmalloc_array() 2018-06-12 16:19:22 -07:00
microread nfc: microread: constify i2c_device_id 2017-11-06 00:56:55 +01:00
nfcmrvl NFC: nfcmrvl_uart: fix OF child-node lookup 2018-10-23 13:28:53 -05:00
nxp-nci nfc: nxp-nci: constify i2c_device_id 2017-11-06 00:56:55 +01:00
pn533 NFC: pn533: Fix wrong GFP flag usage 2018-06-25 21:36:45 +08:00
pn544 nfc: pn544: constify i2c_device_id 2017-11-06 00:56:55 +01:00
s3fwrn5 crypto: shash - remove shash_desc::flags 2019-04-25 15:38:12 +08:00
st-nci treewide: setup_timer() -> timer_setup() (2 field) 2017-11-21 15:57:09 -08:00
st21nfca treewide: setup_timer() -> timer_setup() (2 field) 2017-11-21 15:57:09 -08:00
st95hf networking: add and use skb_put_u8() 2017-06-16 11:48:40 -04:00
Kconfig NFC: trf7970a: Convert to descriptor based GPIO interface 2017-06-18 23:57:58 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mei_phy.c mei: bus: split RX and async notification callbacks 2016-11-17 16:37:49 +01:00
mei_phy.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
nfcsim.c NFC: add NULL checks to avoid potential NULL pointer dereference 2017-06-23 00:34:56 +02:00
port100.c networking: add and use skb_put_u8() 2017-06-16 11:48:40 -04:00
trf7970a.c NFC: trf7970a: Correct register settings for 27MHz clock 2017-06-28 09:16:54 +02:00