Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\trace\trace_irqsoff.c Create Date:2022-07-28 12:09:16
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Prologue for the preempt and irqs off function tracers.* Returns 1 if it is OK to continue, and data->disabled is* incremented.* 0 if the trace is to be ignored, and data->disabled* is kept the same.* Note, this function is also used outside this ifdef but

Proto:static int func_prolog_dec(struct trace_array *tr, struct trace_array_cpu **data, unsigned long *flags)

Type:int

Parameter:

TypeParameterName
struct trace_array *tr
struct trace_array_cpu **data
unsigned long *flags
112  cpu = These macros fold the SMP functionality into a single CPU system()
113  If Value is more likely to compile time(!per_cpu(tracing_cpu, cpu)) Then Return 0
116  local_save_flags( * flags)
122  If Not irqs_disabled_flags( * flags) && Not We mask the PREEMPT_NEED_RESCHED bit so as not to confuse all current users* that think a non-zero value indicates we cannot preempt. Then Return 0
125  data = per_cpu_ptr(data, cpu)
126  disabled = atomic_inc_return( & disabled)
128  If Value is more likely to compile time(disabled == 1) Then Return 1
131  atomic_dec( & disabled)
133  Return 0
Caller
NameDescribe
irqsoff_tracer_callqsoff uses its own tracer function to keep the overhead down: