Blame view
include/linux/fault-inject.h
1.98 KB
6ff1cb355 [PATCH] fault-inj... |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#ifndef _LINUX_FAULT_INJECT_H #define _LINUX_FAULT_INJECT_H #ifdef CONFIG_FAULT_INJECTION #include <linux/types.h> #include <linux/debugfs.h> #include <asm/atomic.h> /* * For explanation of the elements of this struct, see * Documentation/fault-injection/fault-injection.txt */ struct fault_attr { unsigned long probability; unsigned long interval; atomic_t times; atomic_t space; unsigned long verbose; |
f4f154fd9 [PATCH] fault inj... |
20 |
u32 task_filter; |
329409aed [PATCH] fault inj... |
21 22 23 24 25 |
unsigned long stacktrace_depth; unsigned long require_start; unsigned long require_end; unsigned long reject_start; unsigned long reject_end; |
6ff1cb355 [PATCH] fault-inj... |
26 27 28 29 30 31 32 33 34 35 36 37 38 |
unsigned long count; #ifdef CONFIG_FAULT_INJECTION_DEBUG_FS struct { struct dentry *dir; struct dentry *probability_file; struct dentry *interval_file; struct dentry *times_file; struct dentry *space_file; struct dentry *verbose_file; |
f4f154fd9 [PATCH] fault inj... |
39 |
struct dentry *task_filter_file; |
329409aed [PATCH] fault inj... |
40 41 42 43 44 |
struct dentry *stacktrace_depth_file; struct dentry *require_start_file; struct dentry *require_end_file; struct dentry *reject_start_file; struct dentry *reject_end_file; |
6ff1cb355 [PATCH] fault-inj... |
45 46 47 48 49 50 51 52 |
} dentries; #endif }; #define FAULT_ATTR_INITIALIZER { \ .interval = 1, \ .times = ATOMIC_INIT(1), \ |
329409aed [PATCH] fault inj... |
53 54 |
.require_end = ULONG_MAX, \ .stacktrace_depth = 32, \ |
6b1b60f41 [PATCH] fault-inj... |
55 |
.verbose = 2, \ |
6ff1cb355 [PATCH] fault-inj... |
56 57 58 59 60 |
} #define DECLARE_FAULT_ATTR(name) struct fault_attr name = FAULT_ATTR_INITIALIZER int setup_fault_attr(struct fault_attr *attr, char *str); void should_fail_srandom(unsigned long entropy); |
08b3df2d1 [PATCH] fault-inj... |
61 |
bool should_fail(struct fault_attr *attr, ssize_t size); |
6ff1cb355 [PATCH] fault-inj... |
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS int init_fault_attr_dentries(struct fault_attr *attr, const char *name); void cleanup_fault_attr_dentries(struct fault_attr *attr); #else /* CONFIG_FAULT_INJECTION_DEBUG_FS */ static inline int init_fault_attr_dentries(struct fault_attr *attr, const char *name) { return -ENODEV; } static inline void cleanup_fault_attr_dentries(struct fault_attr *attr) { } #endif /* CONFIG_FAULT_INJECTION_DEBUG_FS */ #endif /* CONFIG_FAULT_INJECTION */ #endif /* _LINUX_FAULT_INJECT_H */ |