aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWei Yongjun <[email protected]>2022-08-17 08:03:30 +0000
committerAndrew Morton <[email protected]>2022-12-15 16:40:43 -0800
commit4acb9e5139f20c79eb08a95dc5a28186ae7a5088 (patch)
tree7efa51f1fe4b75261af8ab091e8bd614f94bed14
parenta7ebbbb159c181c696770feeb89bf0334aaff6d8 (diff)
fault-injection: skip stacktrace filtering by default
If FAULT_INJECTION_STACKTRACE_FILTER is enabled, the depth is default to 32. This means fail_stacktrace() will iter each entry's stacktrace, even if filter is not configured. This patch changes to quick return from fail_stacktrace() if stacktrace filter is not set. Link: https://lkml.kernel.org/r/[email protected] Signed-off-by: Wei Yongjun <[email protected]> Cc: Akinobu Mita <[email protected]> Cc: Dan Williams <[email protected]> Cc: Isabella Basso <[email protected]> Cc: Josh Poimboeuf <[email protected]> Cc: Kees Cook <[email protected]> Cc: Miguel Ojeda <[email protected]> Cc: Nathan Chancellor <[email protected]> Cc: Nick Desaulniers <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Rasmus Villemoes <[email protected]> Cc: Vlastimil Babka <[email protected]> Signed-off-by: Andrew Morton <[email protected]>
-rw-r--r--lib/fault-inject.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/fault-inject.c b/lib/fault-inject.c
index 1421818c9ef7..fecc4d8ca32a 100644
--- a/lib/fault-inject.c
+++ b/lib/fault-inject.c
@@ -71,7 +71,7 @@ static bool fail_stacktrace(struct fault_attr *attr)
int n, nr_entries;
bool found = (attr->require_start == 0 && attr->require_end == ULONG_MAX);
- if (depth == 0)
+ if (depth == 0 || (found && !attr->reject_start && !attr->reject_end))
return found;
nr_entries = stack_trace_save(entries, depth, 1);