Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:event_hist_trigger

Proto:static void event_hist_trigger(struct event_trigger_data *data, void *rec, struct ring_buffer_event *rbe)

Type:void

Parameter:

TypeParameterName
struct event_trigger_data *data
void *rec
struct ring_buffer_event *rbe
5322  hist_data = private_data
5323  use_compound_key = n_keys > 1
5327  struct tracing_map_elt * elt = NULL
5330  void * key = NULL
5333  memset(compound_key, 0, key_size)
5336  key_field = fields[i]
5338  If flags & HIST_FIELD_FL_STACKTRACE Then
5339  memset(entries, 0, HIST_STACKTRACE_SIZE)
5340  stack_trace_save - Save a stack trace into a storage array*@store: Pointer to storage array*@size: Size of the storage array*@skipnr: Number of entries to skip at the start of the stack trace* Return: Number of trace entries stored.
5342  key = entries
5343  Else
5344  field_contents = fn(key_field, elt, rbe, rec)
5345  If flags & HIST_FIELD_FL_STRING Then
5346  key = field_contents
5347  use_compound_key = true
5348  Else key = (void * ) & field_contents
5352  If use_compound_key Then add_to_key(compound_key, key, key_field, rec)
5356  If use_compound_key Then key = compound_key
5359  If n_var_refs && Not resolve_var_refs(hist_data, key, var_ref_vals, false) Then Return
5363  elt = racing_map_insert - Insert key and/or retrieve val from a tracing_map*@map: The tracing_map to insert into*@key: The key to insert* Inserts a key into a tracing_map and creates and returns a new* tracing_map_elt for it, or if the key has already been
5364  If Not elt Then Return
5367  hist_trigger_elt_update(hist_data, elt, rec, rbe, var_ref_vals)
5369  If resolve_var_refs(hist_data, key, var_ref_vals, true) Then hist_trigger_actions(hist_data, elt, rec, rbe, key, var_ref_vals)