diff options
Diffstat (limited to 'lib/fault-inject.c')
| -rw-r--r-- | lib/fault-inject.c | 12 | 
1 files changed, 3 insertions, 9 deletions
| diff --git a/lib/fault-inject.c b/lib/fault-inject.c index cf7b129b0b2b..e26aa4f65eb9 100644 --- a/lib/fault-inject.c +++ b/lib/fault-inject.c @@ -65,22 +65,16 @@ static bool fail_task(struct fault_attr *attr, struct task_struct *task)  static bool fail_stacktrace(struct fault_attr *attr)  { -	struct stack_trace trace;  	int depth = attr->stacktrace_depth;  	unsigned long entries[MAX_STACK_TRACE_DEPTH]; -	int n; +	int n, nr_entries;  	bool found = (attr->require_start == 0 && attr->require_end == ULONG_MAX);  	if (depth == 0)  		return found; -	trace.nr_entries = 0; -	trace.entries = entries; -	trace.max_entries = depth; -	trace.skip = 1; - -	save_stack_trace(&trace); -	for (n = 0; n < trace.nr_entries; n++) { +	nr_entries = stack_trace_save(entries, depth, 1); +	for (n = 0; n < nr_entries; n++) {  		if (attr->reject_start <= entries[n] &&  			       entries[n] < attr->reject_end)  			return false; |