[PATCH] fault-injection capability for kmalloc

This patch provides fault-injection capability for kmalloc.

Boot option:

failslab=<interval>,<probability>,<space>,<times>

	<interval> -- specifies the interval of failures.

	<probability> -- specifies how often it should fail in percent.

	<space> -- specifies the size of free space where memory can be
		   allocated safely in bytes.

	<times> -- specifies how many times failures may happen at most.

Debugfs:

/debug/failslab/interval
/debug/failslab/probability
/debug/failslab/specifies
/debug/failslab/times
/debug/failslab/ignore-gfp-highmem
/debug/failslab/ignore-gfp-wait

Example:

	failslab=10,100,0,-1

slab allocation (kmalloc(), kmem_cache_alloc(),..) fails once per 10 times.

Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Akinobu Mita 2006-12-08 02:39:44 -08:00 committed by Linus Torvalds
parent 6ff1cb355e
commit 8a8b6502fb
3 changed files with 84 additions and 2 deletions

View file

@ -417,6 +417,13 @@ config LKDTM
config FAULT_INJECTION
bool
config FAILSLAB
bool "Fault-injection capabilitiy for kmalloc"
depends on DEBUG_KERNEL
select FAULT_INJECTION
help
This option provides fault-injection capabilitiy for kmalloc.
config FAULT_INJECTION_DEBUG_FS
bool "Debugfs entries for fault-injection capabilities"
depends on FAULT_INJECTION && SYSFS