| 函数逻辑报告 | 
| Source Code: kernel\events\core.c | Create Date:2022-07-27 14:54:57 | 
| Last Modify:2022-05-20 07:50:19 | Copyright©Brick | 
| 首页 | 函数Tree | 
| 注解内核,赢得工具 | 下载SCCT | English | 
函数名称:_perf_ioctl
函数原型:static long _perf_ioctl(struct perf_event *event, unsigned int cmd, unsigned long arg)
返回类型:long
参数:
| 类型 | 参数 | 名称 | 
|---|---|---|
| struct perf_event * | event | |
| unsigned int | cmd | |
| unsigned long | arg | 
| 5245 | func等于Enable an event | 
| 5246 | 退出 | 
| 5247 | 当:cmd恒等于PERF_EVENT_IOC_DISABLE | 
| 5248 | func等于Disable an event | 
| 5249 | 退出 | 
| 5250 | 当:cmd恒等于PERF_EVENT_IOC_RESET | 
| 5251 | func等于_perf_event_reset | 
| 5252 | 退出 | 
| 5254 | 当:cmd恒等于PERF_EVENT_IOC_REFRESH | 
| 5255 | 返回:_perf_event_refresh(event, arg) | 
| 5257 | 当:cmd恒等于PERF_EVENT_IOC_PERIOD | 
| 5264 | 返回:_perf_event_period(event, value) | 
| 5266 | 当:cmd恒等于PERF_EVENT_IOC_ID | 
| 5272 | 返回:0 | 
| 5275 | 当:cmd恒等于PERF_EVENT_IOC_SET_OUTPUT | 
| 5278 | 如果arg不等于负1则 | 
| 5281 | ret等于perf_fget_light(arg, & output) | 
| 5285 | ret等于perf_event_set_output(event, output_event) | 
| 5287 | 否则 | 
| 5288 | ret等于perf_event_set_output(event, NULL) | 
| 5290 | 返回:ret | 
| 5293 | 当:cmd恒等于PERF_EVENT_IOC_SET_FILTER | 
| 5294 | 返回:perf_event_set_filter(event, (void__user * )arg) | 
| 5296 | 当:cmd恒等于PERF_EVENT_IOC_SET_BPF | 
| 5297 | 返回:perf_event_set_bpf_prog(event, arg) | 
| 5299 | 当:cmd恒等于PERF_EVENT_IOC_PAUSE_OUTPUT | 
| 5303 | rb等于cu_dereference() - fetch RCU-protected pointer for dereferencing*@p: The pointer to read, prior to dereferencing* This is a simple wrapper around rcu_dereference_check().(rb) | 
| 5304 | 如果非rb或非 nr of data pages 则 | 
| 5306 | 返回:负EINVAL | 
| 5308 | rb_toggle_paused(rb, !!arg) | 
| 5310 | 返回:0 | 
| 5313 | 当:cmd恒等于PERF_EVENT_IOC_QUERY_BPF | 
| 5314 | 返回:perf_event_query_prog_array(event, (void__user * )arg) | 
| 5316 | 当:cmd恒等于PERF_EVENT_IOC_MODIFY_ATTRIBUTES | 
| 5318 | err等于perf_copy_attr((structperf_event_attr__user * )arg, & new_attr) | 
| 5324 | 返回:perf_event_modify_attr(event, & new_attr) | 
| 5326 | 默认 | 
| 5327 | 返回:负ENOTTY | 
| 5330 | 如果flags按位与PERF_IOC_FLAG_GROUP则perf_event_for_each(event, func) | 
| 5335 | 返回:0 | 
| 名称 | 描述 | 
|---|---|
| perf_ioctl | 
| 源代码转换工具 开放的插件接口 | X | 
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |