linux-stable-rt/crypto
Jim Keniston 565d76cb7d zlib: slim down zlib_deflate() workspace when possible
Instead of always creating a huge (268K) deflate_workspace with the
maximum compression parameters (windowBits=15, memLevel=8), allow the
caller to obtain a smaller workspace by specifying smaller parameter
values.

For example, when capturing oops and panic reports to a medium with
limited capacity, such as NVRAM, compression may be the only way to
capture the whole report.  In this case, a small workspace (24K works
fine) is a win, whether you allocate the workspace when you need it (i.e.,
during an oops or panic) or at boot time.

I've verified that this patch works with all accepted values of windowBits
(positive and negative), memLevel, and compression level.

Signed-off-by: Jim Keniston <jkenisto@us.ibm.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: David Miller <davem@davemloft.net>
Cc: Chris Mason <chris.mason@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-03-22 17:44:17 -07:00
..
async_tx Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2010-10-27 19:04:36 -07:00
Kconfig crypto: gf128mul - Remove experimental tag 2010-12-28 22:56:26 +11:00
Makefile crypto: authencesn - Add algorithm to handle IPsec extended sequence numbers 2011-03-13 20:22:27 -07:00
ablkcipher.c crypto: skcipher - remove redundant NULL check 2011-01-29 15:09:43 +11:00
aead.c
aes_generic.c
af_alg.c crypto: af_alg - fix af_alg memory_allocated data type 2010-12-21 22:22:40 +11:00
ahash.c
algapi.c
algboss.c
algif_hash.c crypto: algif_hash - User-space interface for hash operations 2010-11-19 17:47:58 +08:00
algif_skcipher.c crypto: algif_skcipher - Handle unaligned receive buffer 2010-11-30 17:04:31 +08:00
ansi_cprng.c
anubis.c
api.c
arc4.c
authenc.c crypto: Use scatterwalk_crypto_chain 2010-12-02 14:47:16 +08:00
authencesn.c crypto: authencesn - Add algorithm to handle IPsec extended sequence numbers 2011-03-13 20:22:27 -07:00
blkcipher.c mm: strictly nested kmap_atomic() 2010-10-26 16:52:08 -07:00
blowfish.c
camellia.c
cast5.c crypto: cast5 - simplify if-statements 2010-11-13 21:47:55 +09:00
cast6.c
cbc.c
ccm.c
chainiv.c
cipher.c
compress.c
crc32c.c
cryptd.c
crypto_null.c
crypto_wq.c crypto: mark crypto workqueues CPU_INTENSIVE 2011-01-04 23:34:08 +11:00
ctr.c
cts.c
deflate.c zlib: slim down zlib_deflate() workspace when possible 2011-03-22 17:44:17 -07:00
des_generic.c
ecb.c
eseqiv.c crypto: Use scatterwalk_crypto_chain 2010-12-02 14:47:16 +08:00
fcrypt.c
fips.c
gcm.c crypto: Use scatterwalk_crypto_chain 2010-12-02 14:47:16 +08:00
gf128mul.c
ghash-generic.c
hmac.c
internal.h
khazad.c
krng.c
lrw.c
lzo.c
md4.c
md5.c
michael_mic.c
pcbc.c
pcompress.c
pcrypt.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2011-01-13 10:25:58 -08:00
proc.c
ripemd.h
rmd128.c crypto: ripemd - Set module author and update email address 2011-01-04 23:34:03 +11:00
rmd160.c crypto: ripemd - Set module author and update email address 2011-01-04 23:34:03 +11:00
rmd256.c crypto: ripemd - Set module author and update email address 2011-01-04 23:34:03 +11:00
rmd320.c crypto: ripemd - Set module author and update email address 2011-01-04 23:34:03 +11:00
rng.c
salsa20_generic.c
scatterwalk.c
seed.c
seqiv.c
serpent.c
sha1_generic.c
sha256_generic.c
sha512_generic.c
shash.c crypto: hash - Fix async import on shash algorithm 2010-11-04 14:48:37 -04:00
tcrypt.c crypto: tcrypt - do not attempt to write to readonly variable 2011-03-04 15:28:52 +08:00
tcrypt.h
tea.c
testmgr.c crypto: testmgr - mark ghash as fips_allowed 2011-01-29 15:14:35 +11:00
testmgr.h crypto: sha1 - Add test vector to test partial block processing 2011-02-17 14:24:45 +11:00
tgr192.c
twofish_common.c
twofish_generic.c
vmac.c
wp512.c
xcbc.c
xor.c
xts.c
zlib.c zlib: slim down zlib_deflate() workspace when possible 2011-03-22 17:44:17 -07:00