xref: /linux/Documentation/ABI/testing/sysfs-kernel-slab (revision 888a214dc4c65e1486ef7d3ac6b0cf93ae3cc2c7)
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:
4878eb00ccSDavid Rientjes		The alloc_fastpath file shows how many objects have been
4978eb00ccSDavid Rientjes		allocated using the fast path.  It can be written to clear the
5078eb00ccSDavid 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:
5978eb00ccSDavid Rientjes		The alloc_from_partial file shows how many times a cpu slab has
6078eb00ccSDavid Rientjes		been full and it has been refilled by using a slab from the list
6178eb00ccSDavid Rientjes		of partially used slabs.  It can be written to clear the current
6278eb00ccSDavid 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:
7178eb00ccSDavid Rientjes		The alloc_refill file shows how many times the per-cpu freelist
7278eb00ccSDavid Rientjes		was empty but there were objects available as the result of
7378eb00ccSDavid 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:
8278eb00ccSDavid Rientjes		The alloc_slab file is shows how many times a new slab had to
8378eb00ccSDavid Rientjes		be allocated from the page allocator.  It can be written to
8478eb00ccSDavid 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:
9378eb00ccSDavid Rientjes		The alloc_slowpath file shows how many objects have been
9478eb00ccSDavid Rientjes		allocated using the slow path because of a refill or
9578eb00ccSDavid Rientjes		allocation from a partial or new slab.  It can be written to
9678eb00ccSDavid 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:
12478eb00ccSDavid Rientjes		The file cpuslab_flush shows how many times a cache's cpu slabs
12578eb00ccSDavid Rientjes		have been flushed as the result of destroying or shrinking a
12678eb00ccSDavid Rientjes		cache, a cpu going offline, or as the result of forcing an
12778eb00ccSDavid Rientjes		allocation from a certain node.  It can be written to clear the
12878eb00ccSDavid 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:
14778eb00ccSDavid Rientjes		The deactivate_empty file shows how many times an empty cpu slab
14878eb00ccSDavid 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:
15778eb00ccSDavid Rientjes		The deactivate_full file shows how many times a full cpu slab
15878eb00ccSDavid 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:
16778eb00ccSDavid Rientjes		The deactivate_remote_frees file shows how many times a cpu slab
16878eb00ccSDavid Rientjes		has been deactivated and contained free objects that were freed
16978eb00ccSDavid 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:
17878eb00ccSDavid Rientjes		The deactivate_to_head file shows how many times a partial cpu
17978eb00ccSDavid Rientjes		slab was deactivated and added to the head of its node's partial
18078eb00ccSDavid 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:
18978eb00ccSDavid Rientjes		The deactivate_to_tail file shows how many times a partial cpu
19078eb00ccSDavid Rientjes		slab was deactivated and added to the tail of its node's partial
19178eb00ccSDavid 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:
20978eb00ccSDavid Rientjes		The free_add_partial file shows how many times an object has
21078eb00ccSDavid Rientjes		been freed in a full slab so that it had to added to its node's
21178eb00ccSDavid 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:
23078eb00ccSDavid Rientjes		The free_fastpath file shows how many objects have been freed
23178eb00ccSDavid Rientjes		using the fast path because it was an object from the cpu slab.
23278eb00ccSDavid 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:
24178eb00ccSDavid Rientjes		The free_frozen file shows how many objects have been freed to
24278eb00ccSDavid Rientjes		a frozen slab (i.e. a remote cpu slab).  It can be written to
24378eb00ccSDavid 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:
25278eb00ccSDavid Rientjes		The free_remove_partial file shows how many times an object has
25378eb00ccSDavid Rientjes		been freed to a now-empty slab so that it had to be removed from
25478eb00ccSDavid Rientjes		its node's partial list.  It can be written to clear the current
25578eb00ccSDavid 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:
26478eb00ccSDavid Rientjes		The free_slab file shows how many times an empty slab has been
26578eb00ccSDavid Rientjes		freed back to the page allocator.  It can be written to clear
26678eb00ccSDavid 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:
27578eb00ccSDavid Rientjes		The free_slowpath file shows how many objects have been freed
27678eb00ccSDavid Rientjes		using the slow path (i.e. to a full or partial slab).  It can
27778eb00ccSDavid 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.
349*888a214dSStanislaw Gruszka		When debug_guardpage_minorder=N (N > 0) parameter is specified
350*888a214dSStanislaw Gruszka		(see Documentation/kernel-parameters.txt), the minimum possible
351*888a214dSStanislaw Gruszka		order is used and this sysfs entry can not be used to change
352*888a214dSStanislaw Gruszka		the order at run time.
35351e95bedSDavid Rientjes
35451e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/order_fallback
35551e95bedSDavid RientjesDate:		April 2008
35651e95bedSDavid RientjesKernelVersion:	2.6.26
35751e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
35851e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
35951e95bedSDavid RientjesDescription:
36078eb00ccSDavid Rientjes		The order_fallback file shows how many times an allocation of a
36178eb00ccSDavid Rientjes		new slab has not been possible at the cache's order and instead
36278eb00ccSDavid Rientjes		fallen back to its minimum possible order.  It can be written to
36378eb00ccSDavid Rientjes		clear the current count.
36451e95bedSDavid Rientjes		Available when CONFIG_SLUB_STATS is enabled.
36551e95bedSDavid Rientjes
36651e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/partial
36751e95bedSDavid RientjesDate:		May 2007
36851e95bedSDavid RientjesKernelVersion:	2.6.22
36951e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
37051e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
37151e95bedSDavid RientjesDescription:
37251e95bedSDavid Rientjes		The partial file is read-only and displays how long many
37351e95bedSDavid Rientjes		partial slabs there are and how long each node's list is.
37451e95bedSDavid Rientjes
37551e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/poison
37651e95bedSDavid RientjesDate:		May 2007
37751e95bedSDavid RientjesKernelVersion:	2.6.22
37851e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
37951e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
38051e95bedSDavid RientjesDescription:
38151e95bedSDavid Rientjes		The poison file specifies whether objects should be poisoned
38251e95bedSDavid Rientjes		when a new slab is allocated.
38351e95bedSDavid Rientjes
38451e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/reclaim_account
38551e95bedSDavid RientjesDate:		May 2007
38651e95bedSDavid RientjesKernelVersion:	2.6.22
38751e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
38851e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
38951e95bedSDavid RientjesDescription:
39051e95bedSDavid Rientjes		The reclaim_account file specifies whether the cache's objects
39151e95bedSDavid Rientjes		are reclaimable (and grouped by their mobility).
39251e95bedSDavid Rientjes
39351e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/red_zone
39451e95bedSDavid RientjesDate:		May 2007
39551e95bedSDavid RientjesKernelVersion:	2.6.22
39651e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
39751e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
39851e95bedSDavid RientjesDescription:
39951e95bedSDavid Rientjes		The red_zone file specifies whether the cache's objects are red
40051e95bedSDavid Rientjes		zoned.
40151e95bedSDavid Rientjes
40251e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/remote_node_defrag_ratio
40351e95bedSDavid RientjesDate:		January 2008
40451e95bedSDavid RientjesKernelVersion:	2.6.25
40551e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
40651e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
40751e95bedSDavid RientjesDescription:
40851e95bedSDavid Rientjes		The file remote_node_defrag_ratio specifies the percentage of
40951e95bedSDavid Rientjes		times SLUB will attempt to refill the cpu slab with a partial
41051e95bedSDavid Rientjes		slab from a remote node as opposed to allocating a new slab on
41151e95bedSDavid Rientjes		the local node.  This reduces the amount of wasted memory over
41251e95bedSDavid Rientjes		the entire system but can be expensive.
41351e95bedSDavid Rientjes		Available when CONFIG_NUMA is enabled.
41451e95bedSDavid Rientjes
41551e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/sanity_checks
41651e95bedSDavid RientjesDate:		May 2007
41751e95bedSDavid RientjesKernelVersion:	2.6.22
41851e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
41951e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
42051e95bedSDavid RientjesDescription:
42151e95bedSDavid Rientjes		The sanity_checks file specifies whether expensive checks
42251e95bedSDavid Rientjes		should be performed on free and, at minimum, enables double free
42351e95bedSDavid Rientjes		checks.  Caches that enable sanity_checks cannot be merged with
42451e95bedSDavid Rientjes		caches that do not.
42551e95bedSDavid Rientjes
42651e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/shrink
42751e95bedSDavid RientjesDate:		May 2007
42851e95bedSDavid RientjesKernelVersion:	2.6.22
42951e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
43051e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
43151e95bedSDavid RientjesDescription:
43251e95bedSDavid Rientjes		The shrink file is written when memory should be reclaimed from
43351e95bedSDavid Rientjes		a cache.  Empty partial slabs are freed and the partial list is
43451e95bedSDavid Rientjes		sorted so the slabs with the fewest available objects are used
43551e95bedSDavid Rientjes		first.
43651e95bedSDavid Rientjes
43751e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/slab_size
43851e95bedSDavid RientjesDate:		May 2007
43951e95bedSDavid RientjesKernelVersion:	2.6.22
44051e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
44151e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
44251e95bedSDavid RientjesDescription:
44351e95bedSDavid Rientjes		The slab_size file is read-only and specifies the object size
44451e95bedSDavid Rientjes		with metadata (debugging information and alignment) in bytes.
44551e95bedSDavid Rientjes
44651e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/slabs
44751e95bedSDavid RientjesDate:		May 2007
44851e95bedSDavid RientjesKernelVersion:	2.6.22
44951e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
45051e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
45151e95bedSDavid RientjesDescription:
45251e95bedSDavid Rientjes		The slabs file is read-only and displays how long many slabs
45351e95bedSDavid Rientjes		there are (both cpu and partial) and from which nodes they are
45451e95bedSDavid Rientjes		from.
45551e95bedSDavid Rientjes
45651e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/store_user
45751e95bedSDavid RientjesDate:		May 2007
45851e95bedSDavid RientjesKernelVersion:	2.6.22
45951e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
46051e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
46151e95bedSDavid RientjesDescription:
46251e95bedSDavid Rientjes		The store_user file specifies whether the location of
46351e95bedSDavid Rientjes		allocation or free should be tracked for a cache.
46451e95bedSDavid Rientjes
46551e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/total_objects
46651e95bedSDavid RientjesDate:		April 2008
46751e95bedSDavid RientjesKernelVersion:	2.6.26
46851e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
46951e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
47051e95bedSDavid RientjesDescription:
47151e95bedSDavid Rientjes		The total_objects file is read-only and displays how many total
47251e95bedSDavid Rientjes		objects a cache has and from which nodes they are from.
47351e95bedSDavid Rientjes
47451e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/trace
47551e95bedSDavid RientjesDate:		May 2007
47651e95bedSDavid RientjesKernelVersion:	2.6.22
47751e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
47851e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
47951e95bedSDavid RientjesDescription:
48051e95bedSDavid Rientjes		The trace file specifies whether object allocations and frees
48151e95bedSDavid Rientjes		should be traced.
48251e95bedSDavid Rientjes
48351e95bedSDavid RientjesWhat:		/sys/kernel/slab/cache/validate
48451e95bedSDavid RientjesDate:		May 2007
48551e95bedSDavid RientjesKernelVersion:	2.6.22
48651e95bedSDavid RientjesContact:	Pekka Enberg <penberg@cs.helsinki.fi>,
48751e95bedSDavid Rientjes		Christoph Lameter <cl@linux-foundation.org>
48851e95bedSDavid RientjesDescription:
48951e95bedSDavid Rientjes		Writing to the validate file causes SLUB to traverse all of its
49051e95bedSDavid Rientjes		cache's objects and check the validity of metadata.
491