OpenZFS on Linux and FreeBSD
Go to file
Brian Behlendorf 37db7d8cf9 kmem slab fixes
- Default SPL_KMEM_CACHE_DELAY changed to 15 to match Solaris.
- Aged out slab checking occurs every SPL_KMEM_CACHE_DELAY / 3.
- skc->skc_reap tunable added whichs allows callers of
  spl_slab_reclaim() to cap the number of slabs reclaimed.
  On Solaris all eligible slabs are always reclaimed, and this
  is still the default behavior.  However, I suspect that is
  not always wise for reasons such as in the next comment.
- spl_slab_reclaim() added cond_resched() while walking the
  slab/object free lists.  Soft lockups were observed when
  freeing large numbers of vmalloc'd slabs/objets.
- spl_slab_reclaim() 'sks->sks_ref > 0' check changes from
  incorrect 'break' to 'continue' to ensure all slabs are
  checked.
- spl_cache_age() reworked to avoid a deadlock with
  do_flush_tlb_all() which occured because we slept waiting
  for completion in spl_cache_age().  To waiting for magazine
  reclamation to finish is not required so we no longer wait.
- spl_magazine_create() and spl_magazine_destroy() shifted
  back to using for_each_online_cpu() instead of the
  spl_on_each_cpu() approach which was of course a bad idea
  due to memory allocations which Ricardo pointed out.
2009-02-12 13:32:10 -08:00
build This should have been part of the previous autoconf commit. 2008-06-02 18:41:30 +00:00
cmd Prefix META_ALIAS with SPL_ 2008-11-26 13:26:05 -08:00
config Additional Linux VM integration 2009-02-05 12:26:34 -08:00
include kmem slab fixes 2009-02-12 13:32:10 -08:00
lib Prefix META_ALIAS with SPL_ 2008-11-26 13:26:05 -08:00
module kmem slab fixes 2009-02-12 13:32:10 -08:00
patches Add the minimal set of kernel patches need to for the SPL. Hopefully 2008-06-02 19:45:04 +00:00
scripts Rename modules to module and update references 2009-01-15 10:44:54 -08:00
AUTHORS Go through and add a header with the proper UCRL number. 2008-05-26 04:38:26 +00:00
COPYING Go through and add a header with the proper UCRL number. 2008-05-26 04:38:26 +00:00
ChangeLog Prep for 0.4.2 tag 2009-02-05 13:43:45 -08:00
DISCLAIMER Go through and add a header with the proper UCRL number. 2008-05-26 04:38:26 +00:00
INSTALL Trivial commit to remove whitespace 2008-07-09 19:11:29 +00:00
META Prep for 0.4.2 tag 2009-02-05 13:43:45 -08:00
Makefile.am Rename modules to module and update references 2009-01-15 10:44:54 -08:00
Makefile.in Rename modules to module and update references 2009-01-15 10:44:54 -08:00
autogen.sh * : Add autogen.sh products. 2008-11-24 23:49:18 +00:00
configure Additional Linux VM integration 2009-02-05 12:26:34 -08:00
configure.ac Additional Linux VM integration 2009-02-05 12:26:34 -08:00
libtool Update debug.h to standardize VERIFY3_IMPL error messages in debug and non-debug mode 2009-01-22 09:41:47 -08:00
spl_config.h.in Additional Linux VM integration 2009-02-05 12:26:34 -08:00