linux/crypto
Dan Williams 5157b4aa5b raid6: fix recovery performance regression
The raid6 recovery code should immediately drop back to the optimized
synchronous path when a p+q dma resource is not available.  Otherwise we
run the non-optimized/multi-pass async code in sync mode.

Verified with raid6test (NDISKS=255)

Applies to kernels >= 2.6.32.

Cc: <stable@kernel.org>
Acked-by: NeilBrown <neilb@suse.de>
Reported-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-05-05 07:52:56 -07:00
..
async_tx raid6: fix recovery performance regression 2010-05-05 07:52:56 -07:00
ablkcipher.c crypto: ablkcipher - Fix checkpatch errors 2010-02-16 20:23:37 +08:00
aead.c crypto: aead - Fix checkpatch errors 2010-02-16 20:24:07 +08:00
aes_generic.c crypto: aes_generic - Fix checkpatch errors 2010-02-16 20:34:59 +08:00
ahash.c crypto: hash - Fix handling of unaligned buffers 2010-03-03 08:03:23 +08:00
algapi.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
algboss.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ansi_cprng.c crypto: ansi_cprng - Move FIPS functions under CONFIG_CRYPTO_FIPS 2009-11-23 20:25:50 +08:00
anubis.c crypto: anubis - Fix checkpatch errors 2010-02-16 20:25:39 +08:00
api.c crypto: api - Fix checkpatch errors 2010-02-16 20:26:46 +08:00
arc4.c
authenc.c crypto: authenc - Add EINPROGRESS check 2010-04-26 09:14:05 +08:00
blkcipher.c crypto: skcipher - Avoid infinite loop when cipher fails selftest 2009-02-18 21:20:06 +08:00
blowfish.c crypto: blowfish - Fix checkpatch errors 2010-02-16 20:24:30 +08:00
camellia.c crypto: camellia - Fix checkpatch errors 2010-02-16 20:27:57 +08:00
cast5.c crypto: cast5 - Fix checkpatch errors 2010-02-16 20:29:01 +08:00
cast6.c crypto: cast6 - Fix checkpatch errors 2010-02-16 20:29:45 +08:00
cbc.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
ccm.c crypto: ccm - Fix handling of null assoc data 2009-01-27 17:11:15 +11:00
chainiv.c crypto: chainiv - Use kcrypto_wq instead of keventd_wq 2009-02-19 14:44:02 +08:00
cipher.c crypto: cipher - Fix checkpatch errors 2010-02-16 20:31:37 +08:00
compress.c crypto: compress - Fix checkpatch errors 2010-02-16 20:31:04 +08:00
crc32c.c crypto: crc32 - Fix checkpatch errors 2010-02-16 20:31:19 +08:00
cryptd.c percpu: add __percpu sparse annotations to what's left 2010-02-17 11:17:38 +09:00
crypto_null.c crypto: crypto_null - Fix checkpatch errors 2010-02-16 20:31:54 +08:00
crypto_wq.c crypto: api - Use dedicated workqueue for crypto subsystem 2009-02-19 14:33:40 +08:00
ctr.c crypto: ctr - Use chainiv on raw counter mode 2009-08-13 23:10:39 +10:00
cts.c [CRYPTO] cts: Init SG tables 2008-06-02 15:46:51 +10:00
deflate.c crypto: deflate - Fix checkpatch errors 2010-02-16 20:32:13 +08:00
des_generic.c crypto: des_generic - Fix checkpatch errors 2010-02-16 20:32:31 +08:00
ecb.c crypto: ecb - Fix checkpatch errors 2010-02-16 20:33:49 +08:00
eseqiv.c crypto: eseqiv - Fix IV generation for sync algorithms 2009-04-15 20:45:03 +08:00
fcrypt.c crypto: fcrypt - Fix checkpatch errors 2010-02-16 20:34:07 +08:00
fips.c crypto: api - Add fips_enable flag 2008-08-29 15:50:02 +10:00
gcm.c crypto: gcm - Add RFC4543 wrapper for GCM 2010-01-17 21:52:11 +11:00
gf128mul.c crypto: Fix dead links 2009-03-04 14:43:52 +08:00
ghash-generic.c crypto: ghash - Add GHASH digest algorithm for GCM 2009-08-06 15:32:38 +10:00
hmac.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
internal.h crypto: cryptd - Switch to template create API 2009-07-14 18:45:45 +08:00
Kconfig Merge branch 'for-next' into for-linus 2010-03-08 16:55:37 +01:00
khazad.c [CRYPTO] all: Clean up init()/fini() 2008-04-21 10:19:34 +08:00
krng.c crypto: rng - RNG interface and implementation 2008-08-29 15:50:04 +10:00
lrw.c crypto: lrw - Fix big endian support 2009-02-17 20:00:11 +08:00
lzo.c [CRYPTO] all: Clean up init()/fini() 2008-04-21 10:19:34 +08:00
Makefile crypto: pcrypt - Add pcrypt crypto parallelization wrapper 2010-01-07 15:57:19 +11:00
md4.c crypto: md4 - Switch to shash 2008-12-25 11:02:16 +11:00
md5.c crypto: md5 - Set statesize 2010-03-02 21:58:16 +08:00
michael_mic.c crypto: michael_mic - Switch to shash 2008-12-25 11:02:24 +11:00
pcbc.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
pcompress.c crypto: api - Remove frontend argument from extsize/init_tfm 2009-07-14 12:58:15 +08:00
pcrypt.c crypto: pcrypt - call the complete function on error 2010-02-04 11:40:17 +11:00
proc.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2009-12-08 15:55:13 -08:00
ripemd.h [CRYPTO] ripemd: Put all common RIPEMD values in header file 2008-07-10 20:35:12 +08:00
rmd128.c crypto: rmd128 - Switch to shash 2008-12-25 11:02:09 +11:00
rmd160.c crypto: rmd160 - Switch to shash 2008-12-25 11:02:10 +11:00
rmd256.c crypto: rmd256 - Switch to shash 2008-12-25 11:02:12 +11:00
rmd320.c crypto: rmd320 - Switch to shash 2008-12-25 11:02:13 +11:00
rng.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
salsa20_generic.c crypto: salsa20 - Remove private wrappers around various operations 2008-12-25 11:02:30 +11:00
scatterwalk.c crypto: scatterwalk - Avoid flush_dcache_page on slab pages 2009-02-09 14:30:25 +11:00
seed.c
seqiv.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
serpent.c [CRYPTO] all: Clean up init()/fini() 2008-04-21 10:19:34 +08:00
sha1_generic.c crypto: sha1_generic - Add export/import support 2009-07-11 18:23:33 +08:00
sha256_generic.c crypto: sha256_generic - Add export/import support 2009-07-11 18:23:34 +08:00
sha512_generic.c crypto: sha512_generic - Use 64-bit counters 2009-07-22 14:38:13 +08:00
shash.c crypto: shash - Test for the algorithms import function before exporting it 2009-07-24 13:57:13 +08:00
tcrypt.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
tcrypt.h crypto: cryptomgr - Add test infrastructure 2008-08-29 15:49:55 +10:00
tea.c [CRYPTO] all: Clean up init()/fini() 2008-04-21 10:19:34 +08:00
testmgr.c crypto: testmgr - Fix complain about lack test for internal used algorithm 2009-12-23 19:45:20 +08:00
testmgr.h crypto: testmgr - Add ghash algorithm test before provide to users 2009-11-23 20:23:04 +08:00
tgr192.c crypto: tgr192 - Switch to shash 2008-12-25 11:02:21 +11:00
twofish_common.c
twofish.c [CRYPTO] all: Clean up init()/fini() 2008-04-21 10:19:34 +08:00
vmac.c crypto: vmac - New hash algorithm for intel_txt support 2009-09-02 20:05:22 +10:00
wp512.c crypto: wp512 - Switch to shash 2008-12-25 11:02:22 +11:00
xcbc.c crypto: xcbc - Fix alignment calculation of xcbc_tfm_ctx 2009-08-20 17:58:04 +10:00
xor.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
xts.c [CRYPTO] xts: Use proper alignment 2008-03-06 18:56:19 +08:00
zlib.c crypto: compress - Return produced bytes in crypto_{,de}compress_{update,final} 2009-06-02 14:04:56 +10:00