函数逻辑报告 |
Source Code:kernel\trace\ring_buffer.c |
Create Date:2022-07-27 12:59:45 |
| Last Modify:2020-03-17 19:30:04 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:rb_set_commit_to_write
函数原型:static __always_inline void rb_set_commit_to_write(struct ring_buffer_per_cpu *cpu_buffer)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct ring_buffer_per_cpu * | cpu_buffer |
| 2473 | again : |
| 2476 | 当committed pages 不等于READ_ONCE(write to tail )循环 |
| 2477 | 如果uffer may be either ring_buffer or ring_buffer_per_cpu (cpu_buffer, !(--max_count))则返回 |
| 2482 | local_set( & write committed index , rb_page_write(committed pages )) |
| 2484 | rb_inc_page(cpu_buffer, & committed pages ) |
| 2486 | 如果rb_page_write(committed pages )则write_stamp等于 page time stamp |
| 2492 | 当rb_commit_index(cpu_buffer)不等于rb_page_write(committed pages )循环 |
| 2495 | local_set( & write committed index , rb_page_write(committed pages )) |
| 2511 | 如果此条件成立可能性小(为编译器优化)(committed pages != READ_ONCE(write to tail ))则转到:again |
| 名称 | 描述 |
|---|---|
| rb_end_commit |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |