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:26
Last Modify:2020-03-17 19:30:04 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:rb_wakeups

Proto:static __always_inline void rb_wakeups(struct ring_buffer *buffer, struct ring_buffer_per_cpu *cpu_buffer)

Type:void

Parameter:

TypeParameterName
struct ring_buffer *buffer
struct ring_buffer_per_cpu *cpu_buffer
2618  If waiters_pending Then
2619  waiters_pending = false
2621  irq_work_queue( & work)
2624  If waiters_pending Then
2625  waiters_pending = false
2627  irq_work_queue( & work)
2630  If last_pages_touch == local_read( & pages_touched) Then Return
2633  If reader_page == committed pages Then Return
2636  If Not full_waiters_pending Then Return
2639  last_pages_touch = local_read( & pages_touched)
2641  full = shortest_full
2642  nr_pages = nr_pages
2643  dirty = g_buffer_nr_pages_dirty - get the number of used pages in the ring buffer*@buffer: The ring_buffer to get the number of pages from*@cpu: The cpu of the ring_buffer to get the number of pages from
2644  If full && nr_pages && dirty * 100 <= full * nr_pages Then Return
2647  wakeup_full = true
2648  full_waiters_pending = false
2650  irq_work_queue( & work)
Caller
NameDescribe
ring_buffer_unlock_commitg_buffer_unlock_commit - commit a reserved*@buffer: The buffer to commit to*@event: The event pointer to commit.* This commits the data to the ring buffer, and releases any locks held.* Must be paired with ring_buffer_lock_reserve.
ring_buffer_writeg_buffer_write - write data to the buffer without reserving*@buffer: The ring buffer to write to