Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\relay.c Create Date:2022-07-28 11:46:53
Last Modify:2020-03-17 19:20:22 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:__relay_reset - reset a channel buffer*@buf: the channel buffer*@init: 1 if this is a first-time initialization* See relay_reset() for description of effect.

Proto:static void __relay_reset(struct rchan_buf *buf, unsigned int init)

Type:void

Parameter:

TypeParameterName
struct rchan_buf *buf
unsigned intinit
355  If init Then
356  init_waitqueue_head( & ader wait queue )
357  kref_init - initialize object.*@kref: object in question.
358  init_irq_work( & ader wakeup , wakeup_readers - wake up readers waiting on a channel*@work: contains the channel buffer* This is the function used to defer reader waking)
359  Else
360  irq_work_sync( & ader wakeup )
363  count of sub-buffers produced = 0
364  count of sub-buffers consumed = 0
365  ytes consumed in cur read subbuf = 0
366  uffer has been finalized = 0
367  start of current sub-buffer = start of channel buffer
368  current offset into sub-buffer = 0
370  When i < number of sub-buffers per buffer cycle padding counts per sub-buffer [i] = 0
373  subbuf_start(buf, start of current sub-buffer , NULL, 0)
Caller
NameDescribe
relay_resetlay_reset - reset the channel*@chan: the channel* This has the effect of erasing all data from all channel buffers* and restarting the channel in its initial state. The buffers* are not freed, so any mappings are still in effect.* NOTE
relay_open_buflay_open_buf - create a new relay channel buffer* used by relay_open() and CPU hotplug.