forked from Minki/linux
[PATCH] fault-injection: Use bool-true-false throughout
Use bool-true-false throughout. Signed-off-by: Don Mullis <dwm@meer.net> Cc: 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:
parent
5d0ffa2b84
commit
08b3df2d16
@ -57,7 +57,7 @@ struct fault_attr {
|
|||||||
#define DECLARE_FAULT_ATTR(name) struct fault_attr name = FAULT_ATTR_INITIALIZER
|
#define DECLARE_FAULT_ATTR(name) struct fault_attr name = FAULT_ATTR_INITIALIZER
|
||||||
int setup_fault_attr(struct fault_attr *attr, char *str);
|
int setup_fault_attr(struct fault_attr *attr, char *str);
|
||||||
void should_fail_srandom(unsigned long entropy);
|
void should_fail_srandom(unsigned long entropy);
|
||||||
int should_fail(struct fault_attr *attr, ssize_t size);
|
bool should_fail(struct fault_attr *attr, ssize_t size);
|
||||||
|
|
||||||
#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS
|
#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ static void fail_dump(struct fault_attr *attr)
|
|||||||
|
|
||||||
#define atomic_dec_not_zero(v) atomic_add_unless((v), -1, 0)
|
#define atomic_dec_not_zero(v) atomic_add_unless((v), -1, 0)
|
||||||
|
|
||||||
static int fail_task(struct fault_attr *attr, struct task_struct *task)
|
static bool fail_task(struct fault_attr *attr, struct task_struct *task)
|
||||||
{
|
{
|
||||||
return !in_interrupt() && task->make_it_fail;
|
return !in_interrupt() && task->make_it_fail;
|
||||||
}
|
}
|
||||||
@ -68,15 +68,15 @@ static asmlinkage int fail_stacktrace_callback(struct unwind_frame_info *info,
|
|||||||
break;
|
break;
|
||||||
if (attr->reject_start <= UNW_PC(info) &&
|
if (attr->reject_start <= UNW_PC(info) &&
|
||||||
UNW_PC(info) < attr->reject_end)
|
UNW_PC(info) < attr->reject_end)
|
||||||
return 0;
|
return false;
|
||||||
if (attr->require_start <= UNW_PC(info) &&
|
if (attr->require_start <= UNW_PC(info) &&
|
||||||
UNW_PC(info) < attr->require_end)
|
UNW_PC(info) < attr->require_end)
|
||||||
found = 1;
|
found = true;
|
||||||
}
|
}
|
||||||
return found;
|
return found;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int fail_stacktrace(struct fault_attr *attr)
|
static bool fail_stacktrace(struct fault_attr *attr)
|
||||||
{
|
{
|
||||||
struct unwind_frame_info info;
|
struct unwind_frame_info info;
|
||||||
|
|
||||||
@ -85,9 +85,7 @@ static int fail_stacktrace(struct fault_attr *attr)
|
|||||||
|
|
||||||
#elif defined(CONFIG_STACKTRACE)
|
#elif defined(CONFIG_STACKTRACE)
|
||||||
|
|
||||||
#define MAX_STACK_TRACE_DEPTH 32
|
static bool fail_stacktrace(struct fault_attr *attr)
|
||||||
|
|
||||||
static int fail_stacktrace(struct fault_attr *attr)
|
|
||||||
{
|
{
|
||||||
struct stack_trace trace;
|
struct stack_trace trace;
|
||||||
int depth = attr->stacktrace_depth;
|
int depth = attr->stacktrace_depth;
|
||||||
@ -109,26 +107,26 @@ static int fail_stacktrace(struct fault_attr *attr)
|
|||||||
for (n = 0; n < trace.nr_entries; n++) {
|
for (n = 0; n < trace.nr_entries; n++) {
|
||||||
if (attr->reject_start <= entries[n] &&
|
if (attr->reject_start <= entries[n] &&
|
||||||
entries[n] < attr->reject_end)
|
entries[n] < attr->reject_end)
|
||||||
return 0;
|
return false;
|
||||||
if (attr->require_start <= entries[n] &&
|
if (attr->require_start <= entries[n] &&
|
||||||
entries[n] < attr->require_end)
|
entries[n] < attr->require_end)
|
||||||
found = 1;
|
found = true;
|
||||||
}
|
}
|
||||||
return found;
|
return found;
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
static inline int fail_stacktrace(struct fault_attr *attr)
|
static inline bool fail_stacktrace(struct fault_attr *attr)
|
||||||
{
|
{
|
||||||
static int firsttime = 1;
|
static bool firsttime = true;
|
||||||
|
|
||||||
if (firsttime) {
|
if (firsttime) {
|
||||||
printk(KERN_WARNING
|
printk(KERN_WARNING
|
||||||
"This architecture does not implement save_stack_trace()\n");
|
"This architecture does not implement save_stack_trace()\n");
|
||||||
firsttime = 0;
|
firsttime = false;
|
||||||
}
|
}
|
||||||
return 0;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -138,32 +136,32 @@ static inline int fail_stacktrace(struct fault_attr *attr)
|
|||||||
* http://www.nongnu.org/failmalloc/
|
* http://www.nongnu.org/failmalloc/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int should_fail(struct fault_attr *attr, ssize_t size)
|
bool should_fail(struct fault_attr *attr, ssize_t size)
|
||||||
{
|
{
|
||||||
if (attr->task_filter && !fail_task(attr, current))
|
if (attr->task_filter && !fail_task(attr, current))
|
||||||
return 0;
|
return false;
|
||||||
|
|
||||||
if (!fail_stacktrace(attr))
|
if (!fail_stacktrace(attr))
|
||||||
return 0;
|
return false;
|
||||||
|
|
||||||
if (atomic_read(&attr->times) == 0)
|
if (atomic_read(&attr->times) == 0)
|
||||||
return 0;
|
return false;
|
||||||
|
|
||||||
if (atomic_read(&attr->space) > size) {
|
if (atomic_read(&attr->space) > size) {
|
||||||
atomic_sub(size, &attr->space);
|
atomic_sub(size, &attr->space);
|
||||||
return 0;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (attr->interval > 1) {
|
if (attr->interval > 1) {
|
||||||
attr->count++;
|
attr->count++;
|
||||||
if (attr->count % attr->interval)
|
if (attr->count % attr->interval)
|
||||||
return 0;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (attr->probability > random32() % 100)
|
if (attr->probability > random32() % 100)
|
||||||
goto fail;
|
goto fail;
|
||||||
|
|
||||||
return 0;
|
return false;
|
||||||
|
|
||||||
fail:
|
fail:
|
||||||
fail_dump(attr);
|
fail_dump(attr);
|
||||||
@ -171,7 +169,7 @@ fail:
|
|||||||
if (atomic_read(&attr->times) != -1)
|
if (atomic_read(&attr->times) != -1)
|
||||||
atomic_dec_not_zero(&attr->times);
|
atomic_dec_not_zero(&attr->times);
|
||||||
|
|
||||||
return 1;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS
|
#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS
|
||||||
|
Loading…
Reference in New Issue
Block a user