151e95bedSDavid RientjesWhat: /sys/kernel/slab 251e95bedSDavid RientjesDate: May 2007 351e95bedSDavid RientjesKernelVersion: 2.6.22 451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 651e95bedSDavid RientjesDescription: 751e95bedSDavid Rientjes The /sys/kernel/slab directory contains a snapshot of the 851e95bedSDavid Rientjes internal state of the SLUB allocator for each cache. Certain 951e95bedSDavid Rientjes files may be modified to change the behavior of the cache (and 1051e95bedSDavid Rientjes any cache it aliases, if any). 1151e95bedSDavid RientjesUsers: kernel memory tuning tools 1251e95bedSDavid Rientjes 1351e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/aliases 1451e95bedSDavid RientjesDate: May 2007 1551e95bedSDavid RientjesKernelVersion: 2.6.22 1651e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 1751e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 1851e95bedSDavid RientjesDescription: 1951e95bedSDavid Rientjes The aliases file is read-only and specifies how many caches 2051e95bedSDavid Rientjes have merged into this cache. 2151e95bedSDavid Rientjes 2251e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/align 2351e95bedSDavid RientjesDate: May 2007 2451e95bedSDavid RientjesKernelVersion: 2.6.22 2551e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 2651e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 2751e95bedSDavid RientjesDescription: 2851e95bedSDavid Rientjes The align file is read-only and specifies the cache's object 2951e95bedSDavid Rientjes alignment in bytes. 3051e95bedSDavid Rientjes 3151e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/alloc_calls 3251e95bedSDavid RientjesDate: May 2007 3351e95bedSDavid RientjesKernelVersion: 2.6.22 3451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 3551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 3651e95bedSDavid RientjesDescription: 3751e95bedSDavid Rientjes The alloc_calls file is read-only and lists the kernel code 3851e95bedSDavid Rientjes locations from which allocations for this cache were performed. 3951e95bedSDavid Rientjes The alloc_calls file only contains information if debugging is 4051e95bedSDavid Rientjes enabled for that cache (see Documentation/vm/slub.txt). 4151e95bedSDavid Rientjes 4251e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/alloc_fastpath 4351e95bedSDavid RientjesDate: February 2008 4451e95bedSDavid RientjesKernelVersion: 2.6.25 4551e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 4651e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 4751e95bedSDavid RientjesDescription: 48*78eb00ccSDavid Rientjes The alloc_fastpath file shows how many objects have been 49*78eb00ccSDavid Rientjes allocated using the fast path. It can be written to clear the 50*78eb00ccSDavid Rientjes current count. 5151e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 5251e95bedSDavid Rientjes 5351e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/alloc_from_partial 5451e95bedSDavid RientjesDate: February 2008 5551e95bedSDavid RientjesKernelVersion: 2.6.25 5651e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 5751e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 5851e95bedSDavid RientjesDescription: 59*78eb00ccSDavid Rientjes The alloc_from_partial file shows how many times a cpu slab has 60*78eb00ccSDavid Rientjes been full and it has been refilled by using a slab from the list 61*78eb00ccSDavid Rientjes of partially used slabs. It can be written to clear the current 62*78eb00ccSDavid Rientjes count. 6351e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 6451e95bedSDavid Rientjes 6551e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/alloc_refill 6651e95bedSDavid RientjesDate: February 2008 6751e95bedSDavid RientjesKernelVersion: 2.6.25 6851e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 6951e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 7051e95bedSDavid RientjesDescription: 71*78eb00ccSDavid Rientjes The alloc_refill file shows how many times the per-cpu freelist 72*78eb00ccSDavid Rientjes was empty but there were objects available as the result of 73*78eb00ccSDavid Rientjes remote cpu frees. It can be written to clear the current count. 7451e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 7551e95bedSDavid Rientjes 7651e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/alloc_slab 7751e95bedSDavid RientjesDate: February 2008 7851e95bedSDavid RientjesKernelVersion: 2.6.25 7951e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 8051e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 8151e95bedSDavid RientjesDescription: 82*78eb00ccSDavid Rientjes The alloc_slab file is shows how many times a new slab had to 83*78eb00ccSDavid Rientjes be allocated from the page allocator. It can be written to 84*78eb00ccSDavid Rientjes clear the current count. 8551e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 8651e95bedSDavid Rientjes 8751e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/alloc_slowpath 8851e95bedSDavid RientjesDate: February 2008 8951e95bedSDavid RientjesKernelVersion: 2.6.25 9051e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 9151e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 9251e95bedSDavid RientjesDescription: 93*78eb00ccSDavid Rientjes The alloc_slowpath file shows how many objects have been 94*78eb00ccSDavid Rientjes allocated using the slow path because of a refill or 95*78eb00ccSDavid Rientjes allocation from a partial or new slab. It can be written to 96*78eb00ccSDavid Rientjes clear the current count. 9751e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 9851e95bedSDavid Rientjes 9951e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/cache_dma 10051e95bedSDavid RientjesDate: May 2007 10151e95bedSDavid RientjesKernelVersion: 2.6.22 10251e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 10351e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 10451e95bedSDavid RientjesDescription: 10551e95bedSDavid Rientjes The cache_dma file is read-only and specifies whether objects 10651e95bedSDavid Rientjes are from ZONE_DMA. 10751e95bedSDavid Rientjes Available when CONFIG_ZONE_DMA is enabled. 10851e95bedSDavid Rientjes 10951e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/cpu_slabs 11051e95bedSDavid RientjesDate: May 2007 11151e95bedSDavid RientjesKernelVersion: 2.6.22 11251e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 11351e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 11451e95bedSDavid RientjesDescription: 11551e95bedSDavid Rientjes The cpu_slabs file is read-only and displays how many cpu slabs 11651e95bedSDavid Rientjes are active and their NUMA locality. 11751e95bedSDavid Rientjes 11851e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/cpuslab_flush 11951e95bedSDavid RientjesDate: April 2009 12051e95bedSDavid RientjesKernelVersion: 2.6.31 12151e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 12251e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 12351e95bedSDavid RientjesDescription: 124*78eb00ccSDavid Rientjes The file cpuslab_flush shows how many times a cache's cpu slabs 125*78eb00ccSDavid Rientjes have been flushed as the result of destroying or shrinking a 126*78eb00ccSDavid Rientjes cache, a cpu going offline, or as the result of forcing an 127*78eb00ccSDavid Rientjes allocation from a certain node. It can be written to clear the 128*78eb00ccSDavid Rientjes current count. 12951e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 13051e95bedSDavid Rientjes 13151e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/ctor 13251e95bedSDavid RientjesDate: May 2007 13351e95bedSDavid RientjesKernelVersion: 2.6.22 13451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 13551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 13651e95bedSDavid RientjesDescription: 13751e95bedSDavid Rientjes The ctor file is read-only and specifies the cache's object 13851e95bedSDavid Rientjes constructor function, which is invoked for each object when a 13951e95bedSDavid Rientjes new slab is allocated. 14051e95bedSDavid Rientjes 14151e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/deactivate_empty 14251e95bedSDavid RientjesDate: February 2008 14351e95bedSDavid RientjesKernelVersion: 2.6.25 14451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 14551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 14651e95bedSDavid RientjesDescription: 147*78eb00ccSDavid Rientjes The deactivate_empty file shows how many times an empty cpu slab 148*78eb00ccSDavid Rientjes was deactivated. It can be written to clear the current count. 14951e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 15051e95bedSDavid Rientjes 15151e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/deactivate_full 15251e95bedSDavid RientjesDate: February 2008 15351e95bedSDavid RientjesKernelVersion: 2.6.25 15451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 15551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 15651e95bedSDavid RientjesDescription: 157*78eb00ccSDavid Rientjes The deactivate_full file shows how many times a full cpu slab 158*78eb00ccSDavid Rientjes was deactivated. It can be written to clear the current count. 15951e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 16051e95bedSDavid Rientjes 16151e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/deactivate_remote_frees 16251e95bedSDavid RientjesDate: February 2008 16351e95bedSDavid RientjesKernelVersion: 2.6.25 16451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 16551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 16651e95bedSDavid RientjesDescription: 167*78eb00ccSDavid Rientjes The deactivate_remote_frees file shows how many times a cpu slab 168*78eb00ccSDavid Rientjes has been deactivated and contained free objects that were freed 169*78eb00ccSDavid Rientjes remotely. It can be written to clear the current count. 17051e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 17151e95bedSDavid Rientjes 17251e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/deactivate_to_head 17351e95bedSDavid RientjesDate: February 2008 17451e95bedSDavid RientjesKernelVersion: 2.6.25 17551e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 17651e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 17751e95bedSDavid RientjesDescription: 178*78eb00ccSDavid Rientjes The deactivate_to_head file shows how many times a partial cpu 179*78eb00ccSDavid Rientjes slab was deactivated and added to the head of its node's partial 180*78eb00ccSDavid Rientjes list. It can be written to clear the current count. 18151e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 18251e95bedSDavid Rientjes 18351e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/deactivate_to_tail 18451e95bedSDavid RientjesDate: February 2008 18551e95bedSDavid RientjesKernelVersion: 2.6.25 18651e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 18751e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 18851e95bedSDavid RientjesDescription: 189*78eb00ccSDavid Rientjes The deactivate_to_tail file shows how many times a partial cpu 190*78eb00ccSDavid Rientjes slab was deactivated and added to the tail of its node's partial 191*78eb00ccSDavid Rientjes list. It can be written to clear the current count. 19251e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 19351e95bedSDavid Rientjes 19451e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/destroy_by_rcu 19551e95bedSDavid RientjesDate: May 2007 19651e95bedSDavid RientjesKernelVersion: 2.6.22 19751e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 19851e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 19951e95bedSDavid RientjesDescription: 20051e95bedSDavid Rientjes The destroy_by_rcu file is read-only and specifies whether 20151e95bedSDavid Rientjes slabs (not objects) are freed by rcu. 20251e95bedSDavid Rientjes 20351e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/free_add_partial 20451e95bedSDavid RientjesDate: February 2008 20551e95bedSDavid RientjesKernelVersion: 2.6.25 20651e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 20751e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 20851e95bedSDavid RientjesDescription: 209*78eb00ccSDavid Rientjes The free_add_partial file shows how many times an object has 210*78eb00ccSDavid Rientjes been freed in a full slab so that it had to added to its node's 211*78eb00ccSDavid Rientjes partial list. It can be written to clear the current count. 21251e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 21351e95bedSDavid Rientjes 21451e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/free_calls 21551e95bedSDavid RientjesDate: May 2007 21651e95bedSDavid RientjesKernelVersion: 2.6.22 21751e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 21851e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 21951e95bedSDavid RientjesDescription: 22051e95bedSDavid Rientjes The free_calls file is read-only and lists the locations of 22151e95bedSDavid Rientjes object frees if slab debugging is enabled (see 22251e95bedSDavid Rientjes Documentation/vm/slub.txt). 22351e95bedSDavid Rientjes 22451e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/free_fastpath 22551e95bedSDavid RientjesDate: February 2008 22651e95bedSDavid RientjesKernelVersion: 2.6.25 22751e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 22851e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 22951e95bedSDavid RientjesDescription: 230*78eb00ccSDavid Rientjes The free_fastpath file shows how many objects have been freed 231*78eb00ccSDavid Rientjes using the fast path because it was an object from the cpu slab. 232*78eb00ccSDavid Rientjes It can be written to clear the current count. 23351e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 23451e95bedSDavid Rientjes 23551e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/free_frozen 23651e95bedSDavid RientjesDate: February 2008 23751e95bedSDavid RientjesKernelVersion: 2.6.25 23851e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 23951e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 24051e95bedSDavid RientjesDescription: 241*78eb00ccSDavid Rientjes The free_frozen file shows how many objects have been freed to 242*78eb00ccSDavid Rientjes a frozen slab (i.e. a remote cpu slab). It can be written to 243*78eb00ccSDavid Rientjes clear the current count. 24451e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 24551e95bedSDavid Rientjes 24651e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/free_remove_partial 24751e95bedSDavid RientjesDate: February 2008 24851e95bedSDavid RientjesKernelVersion: 2.6.25 24951e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 25051e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 25151e95bedSDavid RientjesDescription: 252*78eb00ccSDavid Rientjes The free_remove_partial file shows how many times an object has 253*78eb00ccSDavid Rientjes been freed to a now-empty slab so that it had to be removed from 254*78eb00ccSDavid Rientjes its node's partial list. It can be written to clear the current 255*78eb00ccSDavid Rientjes count. 25651e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 25751e95bedSDavid Rientjes 25851e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/free_slab 25951e95bedSDavid RientjesDate: February 2008 26051e95bedSDavid RientjesKernelVersion: 2.6.25 26151e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 26251e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 26351e95bedSDavid RientjesDescription: 264*78eb00ccSDavid Rientjes The free_slab file shows how many times an empty slab has been 265*78eb00ccSDavid Rientjes freed back to the page allocator. It can be written to clear 266*78eb00ccSDavid Rientjes the current count. 26751e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 26851e95bedSDavid Rientjes 26951e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/free_slowpath 27051e95bedSDavid RientjesDate: February 2008 27151e95bedSDavid RientjesKernelVersion: 2.6.25 27251e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 27351e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 27451e95bedSDavid RientjesDescription: 275*78eb00ccSDavid Rientjes The free_slowpath file shows how many objects have been freed 276*78eb00ccSDavid Rientjes using the slow path (i.e. to a full or partial slab). It can 277*78eb00ccSDavid Rientjes be written to clear the current count. 27851e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 27951e95bedSDavid Rientjes 28051e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/hwcache_align 28151e95bedSDavid RientjesDate: May 2007 28251e95bedSDavid RientjesKernelVersion: 2.6.22 28351e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 28451e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 28551e95bedSDavid RientjesDescription: 28651e95bedSDavid Rientjes The hwcache_align file is read-only and specifies whether 28751e95bedSDavid Rientjes objects are aligned on cachelines. 28851e95bedSDavid Rientjes 28951e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/min_partial 29051e95bedSDavid RientjesDate: February 2009 29151e95bedSDavid RientjesKernelVersion: 2.6.30 29251e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 29351e95bedSDavid Rientjes David Rientjes <rientjes@google.com> 29451e95bedSDavid RientjesDescription: 29551e95bedSDavid Rientjes The min_partial file specifies how many empty slabs shall 29651e95bedSDavid Rientjes remain on a node's partial list to avoid the overhead of 29751e95bedSDavid Rientjes allocating new slabs. Such slabs may be reclaimed by utilizing 29851e95bedSDavid Rientjes the shrink file. 29951e95bedSDavid Rientjes 30051e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/object_size 30151e95bedSDavid RientjesDate: May 2007 30251e95bedSDavid RientjesKernelVersion: 2.6.22 30351e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 30451e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 30551e95bedSDavid RientjesDescription: 30651e95bedSDavid Rientjes The object_size file is read-only and specifies the cache's 30751e95bedSDavid Rientjes object size. 30851e95bedSDavid Rientjes 30951e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/objects 31051e95bedSDavid RientjesDate: May 2007 31151e95bedSDavid RientjesKernelVersion: 2.6.22 31251e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 31351e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 31451e95bedSDavid RientjesDescription: 31551e95bedSDavid Rientjes The objects file is read-only and displays how many objects are 31651e95bedSDavid Rientjes active and from which nodes they are from. 31751e95bedSDavid Rientjes 31851e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/objects_partial 31951e95bedSDavid RientjesDate: April 2008 32051e95bedSDavid RientjesKernelVersion: 2.6.26 32151e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 32251e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 32351e95bedSDavid RientjesDescription: 32451e95bedSDavid Rientjes The objects_partial file is read-only and displays how many 32551e95bedSDavid Rientjes objects are on partial slabs and from which nodes they are 32651e95bedSDavid Rientjes from. 32751e95bedSDavid Rientjes 32851e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/objs_per_slab 32951e95bedSDavid RientjesDate: May 2007 33051e95bedSDavid RientjesKernelVersion: 2.6.22 33151e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 33251e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 33351e95bedSDavid RientjesDescription: 33451e95bedSDavid Rientjes The file objs_per_slab is read-only and specifies how many 33551e95bedSDavid Rientjes objects may be allocated from a single slab of the order 33651e95bedSDavid Rientjes specified in /sys/kernel/slab/cache/order. 33751e95bedSDavid Rientjes 33851e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/order 33951e95bedSDavid RientjesDate: May 2007 34051e95bedSDavid RientjesKernelVersion: 2.6.22 34151e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 34251e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 34351e95bedSDavid RientjesDescription: 34451e95bedSDavid Rientjes The order file specifies the page order at which new slabs are 34551e95bedSDavid Rientjes allocated. It is writable and can be changed to increase the 34651e95bedSDavid Rientjes number of objects per slab. If a slab cannot be allocated 34751e95bedSDavid Rientjes because of fragmentation, SLUB will retry with the minimum order 34851e95bedSDavid Rientjes possible depending on its characteristics. 34951e95bedSDavid Rientjes 35051e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/order_fallback 35151e95bedSDavid RientjesDate: April 2008 35251e95bedSDavid RientjesKernelVersion: 2.6.26 35351e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 35451e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 35551e95bedSDavid RientjesDescription: 356*78eb00ccSDavid Rientjes The order_fallback file shows how many times an allocation of a 357*78eb00ccSDavid Rientjes new slab has not been possible at the cache's order and instead 358*78eb00ccSDavid Rientjes fallen back to its minimum possible order. It can be written to 359*78eb00ccSDavid Rientjes clear the current count. 36051e95bedSDavid Rientjes Available when CONFIG_SLUB_STATS is enabled. 36151e95bedSDavid Rientjes 36251e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/partial 36351e95bedSDavid RientjesDate: May 2007 36451e95bedSDavid RientjesKernelVersion: 2.6.22 36551e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 36651e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 36751e95bedSDavid RientjesDescription: 36851e95bedSDavid Rientjes The partial file is read-only and displays how long many 36951e95bedSDavid Rientjes partial slabs there are and how long each node's list is. 37051e95bedSDavid Rientjes 37151e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/poison 37251e95bedSDavid RientjesDate: May 2007 37351e95bedSDavid RientjesKernelVersion: 2.6.22 37451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 37551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 37651e95bedSDavid RientjesDescription: 37751e95bedSDavid Rientjes The poison file specifies whether objects should be poisoned 37851e95bedSDavid Rientjes when a new slab is allocated. 37951e95bedSDavid Rientjes 38051e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/reclaim_account 38151e95bedSDavid RientjesDate: May 2007 38251e95bedSDavid RientjesKernelVersion: 2.6.22 38351e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 38451e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 38551e95bedSDavid RientjesDescription: 38651e95bedSDavid Rientjes The reclaim_account file specifies whether the cache's objects 38751e95bedSDavid Rientjes are reclaimable (and grouped by their mobility). 38851e95bedSDavid Rientjes 38951e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/red_zone 39051e95bedSDavid RientjesDate: May 2007 39151e95bedSDavid RientjesKernelVersion: 2.6.22 39251e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 39351e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 39451e95bedSDavid RientjesDescription: 39551e95bedSDavid Rientjes The red_zone file specifies whether the cache's objects are red 39651e95bedSDavid Rientjes zoned. 39751e95bedSDavid Rientjes 39851e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/remote_node_defrag_ratio 39951e95bedSDavid RientjesDate: January 2008 40051e95bedSDavid RientjesKernelVersion: 2.6.25 40151e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 40251e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 40351e95bedSDavid RientjesDescription: 40451e95bedSDavid Rientjes The file remote_node_defrag_ratio specifies the percentage of 40551e95bedSDavid Rientjes times SLUB will attempt to refill the cpu slab with a partial 40651e95bedSDavid Rientjes slab from a remote node as opposed to allocating a new slab on 40751e95bedSDavid Rientjes the local node. This reduces the amount of wasted memory over 40851e95bedSDavid Rientjes the entire system but can be expensive. 40951e95bedSDavid Rientjes Available when CONFIG_NUMA is enabled. 41051e95bedSDavid Rientjes 41151e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/sanity_checks 41251e95bedSDavid RientjesDate: May 2007 41351e95bedSDavid RientjesKernelVersion: 2.6.22 41451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 41551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 41651e95bedSDavid RientjesDescription: 41751e95bedSDavid Rientjes The sanity_checks file specifies whether expensive checks 41851e95bedSDavid Rientjes should be performed on free and, at minimum, enables double free 41951e95bedSDavid Rientjes checks. Caches that enable sanity_checks cannot be merged with 42051e95bedSDavid Rientjes caches that do not. 42151e95bedSDavid Rientjes 42251e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/shrink 42351e95bedSDavid RientjesDate: May 2007 42451e95bedSDavid RientjesKernelVersion: 2.6.22 42551e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 42651e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 42751e95bedSDavid RientjesDescription: 42851e95bedSDavid Rientjes The shrink file is written when memory should be reclaimed from 42951e95bedSDavid Rientjes a cache. Empty partial slabs are freed and the partial list is 43051e95bedSDavid Rientjes sorted so the slabs with the fewest available objects are used 43151e95bedSDavid Rientjes first. 43251e95bedSDavid Rientjes 43351e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/slab_size 43451e95bedSDavid RientjesDate: May 2007 43551e95bedSDavid RientjesKernelVersion: 2.6.22 43651e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 43751e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 43851e95bedSDavid RientjesDescription: 43951e95bedSDavid Rientjes The slab_size file is read-only and specifies the object size 44051e95bedSDavid Rientjes with metadata (debugging information and alignment) in bytes. 44151e95bedSDavid Rientjes 44251e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/slabs 44351e95bedSDavid RientjesDate: May 2007 44451e95bedSDavid RientjesKernelVersion: 2.6.22 44551e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 44651e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 44751e95bedSDavid RientjesDescription: 44851e95bedSDavid Rientjes The slabs file is read-only and displays how long many slabs 44951e95bedSDavid Rientjes there are (both cpu and partial) and from which nodes they are 45051e95bedSDavid Rientjes from. 45151e95bedSDavid Rientjes 45251e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/store_user 45351e95bedSDavid RientjesDate: May 2007 45451e95bedSDavid RientjesKernelVersion: 2.6.22 45551e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 45651e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 45751e95bedSDavid RientjesDescription: 45851e95bedSDavid Rientjes The store_user file specifies whether the location of 45951e95bedSDavid Rientjes allocation or free should be tracked for a cache. 46051e95bedSDavid Rientjes 46151e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/total_objects 46251e95bedSDavid RientjesDate: April 2008 46351e95bedSDavid RientjesKernelVersion: 2.6.26 46451e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 46551e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 46651e95bedSDavid RientjesDescription: 46751e95bedSDavid Rientjes The total_objects file is read-only and displays how many total 46851e95bedSDavid Rientjes objects a cache has and from which nodes they are from. 46951e95bedSDavid Rientjes 47051e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/trace 47151e95bedSDavid RientjesDate: May 2007 47251e95bedSDavid RientjesKernelVersion: 2.6.22 47351e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 47451e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 47551e95bedSDavid RientjesDescription: 47651e95bedSDavid Rientjes The trace file specifies whether object allocations and frees 47751e95bedSDavid Rientjes should be traced. 47851e95bedSDavid Rientjes 47951e95bedSDavid RientjesWhat: /sys/kernel/slab/cache/validate 48051e95bedSDavid RientjesDate: May 2007 48151e95bedSDavid RientjesKernelVersion: 2.6.22 48251e95bedSDavid RientjesContact: Pekka Enberg <penberg@cs.helsinki.fi>, 48351e95bedSDavid Rientjes Christoph Lameter <cl@linux-foundation.org> 48451e95bedSDavid RientjesDescription: 48551e95bedSDavid Rientjes Writing to the validate file causes SLUB to traverse all of its 48651e95bedSDavid Rientjes cache's objects and check the validity of metadata. 487