函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\trace\trace_events_hist.c Create Date:2022-07-27 13:43:21
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:hist_register_trigger

函数原型:static int hist_register_trigger(char *glob, struct event_trigger_ops *ops, struct event_trigger_data *data, struct trace_event_file *file)

返回类型:int

参数:

类型参数名称
char *glob
struct event_trigger_ops *ops
struct event_trigger_data *data
struct trace_event_file *file
5941  hist_data等于private_data
5942  struct event_trigger_data * test, * named_data = NULL
5943  tr等于tr
5944  ret等于0
5946  如果name
5947  named_data等于d_named_trigger - Find the common named trigger associated with @name*@name: The name of the set of named triggers to find the common data for* Named triggers are sets of triggers that share a common set of* trigger data
5948  如果named_data
5949  如果非hist_trigger_match(data, named_data, named_data, true)则
5952  ret等于负EINVAL
5953  转到:out
5958  如果name且非named_data则转到:new
5961  lockdep_assert_held( & event_mutex)
5964  如果trigger_type恒等于ETT_EVENT_HIST
5965  如果非hist_trigger_match(data, test, named_data, false)则继续下一循环
5967  如果pausepaused = true
5969  否则如果contpaused = false
5971  否则如果clearhist_clear(test)
5973  否则
5975  ret等于负EEXIST
5977  转到:out
5980  new :
5981  如果contclear
5982  hist_err(tr, HIST_ERR_TRIGGER_ENOENT_CLEAR, 0)
5983  ret等于负ENOENT
5984  转到:out
5987  如果pausepaused = true
5990  如果named_data
5991  private_data等于private_data
5992  set_named_trigger_data - Associate common named trigger data*@data: The trigger data of a named trigger to unpause* Named triggers are sets of triggers that share a common set of* trigger data
5993  ops等于event_hist_trigger_named_ops
5996  如果init
5997  ret等于init(ops, data)
5998  如果ret小于0则转到:out
6002  如果enable_timestamps
6003  clock等于clock
6005  ret等于tracing_set_clock(tr, clock)
6006  如果ret
6008  转到:out
6011  tracing_set_time_stamp_abs(tr, true)
6014  如果named_datadestroy_hist_data(hist_data)
6017  ret自加
6018  out :
6019  返回:ret