Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\trace\ring_buffer.c Create Date:2022-07-28 11:54:07
Last Modify:2020-03-17 19:30:04 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:rb_reset_tail

Proto:static inline void rb_reset_tail(struct ring_buffer_per_cpu *cpu_buffer, unsigned long tail, struct rb_event_info *info)

Type:void

Parameter:

TypeParameterName
struct ring_buffer_per_cpu *cpu_buffer
unsigned longtail
struct rb_event_info *info
2132  tail_page = tail_page
2134  length = length
2140  If tail >= BUF_PAGE_SIZE Then
2146  If tail == BUF_PAGE_SIZE Then al end of data = 0
2149  local_sub(length, & dex for next write )
2150  Return
2153  event = __rb_page_index(tail_page, tail)
2156  local_add(BUF_PAGE_SIZE - tail, & entries_bytes)
2163  al end of data = tail
2176  If tail > BUF_PAGE_SIZE - wo 32bit words Then
2180  rb_event_set_padding(event)
2183  local_sub(length, & dex for next write )
2184  Return
2188  array[0] = BUF_PAGE_SIZE - tail - RB_EVNT_HDR_SIZE
2189  type_len = RINGBUF_TYPE_PADDING
2191  time_delta = 1
2194  length = tail + length - BUF_PAGE_SIZE
2195  local_sub(length, & dex for next write )
Caller
NameDescribe
rb_move_tailThis is the slow path, force gcc not to inline it.