aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/genhd.h
diff options
context:
space:
mode:
authorAkinobu Mita <akinobu.mita@gmail.com>2006-12-08 05:39:46 -0500
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-08 11:29:02 -0500
commitc17bb4951752d3e0f49cd1ea9d2e868422f9e0d6 (patch)
treedcd23ef706ba09edae462528dc11a507b1d17af6 /include/linux/genhd.h
parent933e312e73f8fc39652bd4d216a5393cc3a014b9 (diff)
[PATCH] fault-injection capability for disk IO
This patch provides fault-injection capability for disk IO. Boot option: fail_make_request=<probability>,<interval>,<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 disk IO can be issued safely in bytes. <times> -- specifies how many times failures may happen at most. Debugfs: /debug/fail_make_request/interval /debug/fail_make_request/probability /debug/fail_make_request/specifies /debug/fail_make_request/times Example: fail_make_request=10,100,0,-1 echo 1 > /sys/blocks/hda/hda1/make-it-fail generic_make_request() on /dev/hda1 fails once per 10 times. Cc: Jens Axboe <axboe@suse.de> 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>
Diffstat (limited to 'include/linux/genhd.h')
-rw-r--r--include/linux/genhd.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index 41f276fdd185..0a022b2f63fc 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -83,6 +83,9 @@ struct hd_struct {
83 struct kobject *holder_dir; 83 struct kobject *holder_dir;
84 unsigned ios[2], sectors[2]; /* READs and WRITEs */ 84 unsigned ios[2], sectors[2]; /* READs and WRITEs */
85 int policy, partno; 85 int policy, partno;
86#ifdef CONFIG_FAIL_MAKE_REQUEST
87 int make_it_fail;
88#endif
86}; 89};
87 90
88#define GENHD_FL_REMOVABLE 1 91#define GENHD_FL_REMOVABLE 1
@@ -90,6 +93,7 @@ struct hd_struct {
90#define GENHD_FL_CD 8 93#define GENHD_FL_CD 8
91#define GENHD_FL_UP 16 94#define GENHD_FL_UP 16
92#define GENHD_FL_SUPPRESS_PARTITION_INFO 32 95#define GENHD_FL_SUPPRESS_PARTITION_INFO 32
96#define GENHD_FL_FAIL 64
93 97
94struct disk_stats { 98struct disk_stats {
95 unsigned long sectors[2]; /* READs and WRITEs */ 99 unsigned long sectors[2]; /* READs and WRITEs */