mirror_zfs/module/spl
Brian Behlendorf 5c1967ebe2 Fix zlib compression
While portions of the code needed to support z_compress_level() and
z_uncompress() where in place.  In reality the current implementation
was non-functional, it just was compilable.

The critical missing component was to setup a workspace for the
compress/uncompress stream structures to use.  A kmem_cache was
added for the workspace area because we require a large chunk
of memory.  This avoids to need to continually alloc/free this
memory and vmap() the pages which is very slow.  Several objects
will reside in the per-cpu kmem_cache making them quick to acquire
and release.  A further optimization would be to adjust the
implementation to additional ensure the memory is local to the cpu.
Currently that may not be the case.
2011-02-25 16:56:22 -08:00
..
.gitignore sun-misc-gitignore 2010-01-08 09:37:54 -08:00
Makefile.in Fix zlib compression 2011-02-25 16:56:22 -08:00
spl-atomic.c Public Release Prep 2010-05-17 15:18:00 -07:00
spl-condvar.c Block in cv_destroy() on all waiters 2011-02-04 14:09:08 -08:00
spl-cred.c Public Release Prep 2010-05-17 15:18:00 -07:00
spl-debug.c Fix zlib compression 2011-02-25 16:56:22 -08:00
spl-err.c Prefix all SPL debug macros with 'S' 2010-07-20 13:30:40 -07:00
spl-generic.c Fix zlib compression 2011-02-25 16:56:22 -08:00
spl-kmem.c Linux compat 2.6.37, invalidate_inodes() 2011-02-23 12:44:32 -08:00
spl-kobj.c Remove VN_HOLD/VN_RELE/VOP_PUTPAGE 2011-01-12 11:38:05 -08:00
spl-kstat.c Prefix all SPL debug macros with 'S' 2010-07-20 13:30:40 -07:00
spl-module.c Linux 2.6.36 compat, use fops->unlocked_ioctl() 2010-11-10 13:16:12 -08:00
spl-mutex.c Public Release Prep 2010-05-17 15:18:00 -07:00
spl-proc.c Prefix all SPL debug macros with 'S' 2010-07-20 13:30:40 -07:00
spl-rwlock.c Public Release Prep 2010-05-17 15:18:00 -07:00
spl-taskq.c Fix taskq code to not drop tasks when TQ_SLEEP is used. 2010-08-02 11:20:31 -07:00
spl-thread.c Add Thread Specific Data (TSD) Implementation 2010-12-07 10:02:32 -08:00
spl-time.c Minor 32-bit fix cast to hrtime_t before the mutliply. 2010-05-23 09:51:17 -07:00
spl-tsd.c Add Thread Specific Data (TSD) Implementation 2010-12-07 10:02:32 -08:00
spl-vnode.c Make vn_cache|vn_file_cache kmem caches 2011-01-12 11:38:05 -08:00
spl-xdr.c Prefix all SPL debug macros with 'S' 2010-07-20 13:30:40 -07:00
spl-zlib.c Fix zlib compression 2011-02-25 16:56:22 -08:00