projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
SUNRPC: cleanup ida information when removing sunrpc module
[firefly-linux-kernel-4.4.55.git]
/
kernel
/
trace
/
trace_irqsoff.c
diff --git
a/kernel/trace/trace_irqsoff.c
b/kernel/trace/trace_irqsoff.c
index e4e56589ec1d392c1734ddff45e87b6fc2dde2fb..be3222b7d72ee5cdf280092035f56eb2403b23ce 100644
(file)
--- a/
kernel/trace/trace_irqsoff.c
+++ b/
kernel/trace/trace_irqsoff.c
@@
-109,8
+109,12
@@
static int func_prolog_dec(struct trace_array *tr,
return 0;
local_save_flags(*flags);
return 0;
local_save_flags(*flags);
- /* slight chance to get a false positive on tracing_cpu */
- if (!irqs_disabled_flags(*flags))
+ /*
+ * Slight chance to get a false positive on tracing_cpu,
+ * although I'm starting to think there isn't a chance.
+ * Leave this for now just to be paranoid.
+ */
+ if (!irqs_disabled_flags(*flags) && !preempt_count())
return 0;
*data = per_cpu_ptr(tr->trace_buffer.data, cpu);
return 0;
*data = per_cpu_ptr(tr->trace_buffer.data, cpu);