函数逻辑报告 |
Source Code:kernel\events\ring_buffer.c |
Create Date:2022-07-27 15:03:12 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Commit the data written by hardware into the ring buffer by adjusting* aux_head and posting a PERF_RECORD_AUX into the perf buffer. It is the* pmu driver's responsibility to observe ordering rules of the hardware,
函数原型:void perf_aux_output_end(struct perf_output_handle *handle, unsigned long size)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct perf_output_handle * | handle | |
| unsigned long | size |
| 477 | wakeup等于非非aux_flags按位与cord was truncated to fit 的值 |
| 482 | 如果aux_overwrite则 |
| 487 | 否则 |
| 506 | 如果size或aux_flags按位与snapshot from overwrite mode 的反则perf_event_aux_event(event, aux_head, size, aux_flags) |
| 510 | WRITE_ONCE(AUX area is defined by aux_{offset,size} fields that should be set* by the userspace, so that* aux_offset >= data_offset + data_size* prior to mmap()ing it, AUX area ) |
| 511 | 如果rb_need_aux_wakeup(rb)则wakeup = true |
| 514 | 如果wakeup则 |
| 515 | 如果aux_flags按位与cord was truncated to fit 则pending_disable等于当前cpu ID() |
| 517 | perf_output_wakeup(handle) |
| 520 | event = NULL |
| 522 | WRITE_ONCE(aux_nest, 0) |
| 524 | rb_free_aux(rb) |
| 525 | ring_buffer_put(rb) |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |