函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\trace\ring_buffer.c Create Date:2022-07-27 12:58:39
Last Modify:2020-03-17 19:30:04 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:rb_head_page_set

函数原型:static int rb_head_page_set(struct ring_buffer_per_cpu *cpu_buffer, struct buffer_page *head, struct buffer_page *prev, int old_flag, int new_flag)

返回类型:int

参数:

类型参数名称
struct ring_buffer_per_cpu *cpu_buffer
struct buffer_page *head
struct buffer_page *prev
intold_flag
intnew_flag
954  unsigned long val = (unsigned long) & list of buffer pages
957  list等于list of buffer pages
959  val与等于RB_FLAG_MASK的反
961  ret等于cmpxchg((unsignedlong * ) & 链表后项, val | old_flag, val | new_flag)
965  如果ret按位与RB_FLAG_MASK的反的值不等于val则返回:PAGE_MOVED is not part of the mask
968  返回:ret按位与RB_FLAG_MASK
调用者
名称描述
rb_head_page_set_update
rb_head_page_set_head
rb_head_page_set_normal