Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\events\ring_buffer.c Create Date:2022-07-28 13:42:25
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Commit the data written by hardware into the ring buffer by adjusting* aux_head and posting a PERF_RECORD_AUX into the perf buffer. It is the* pmu driver's responsibility to observe ordering rules of the hardware,

Proto:void perf_aux_output_end(struct perf_output_handle *handle, unsigned long size)

Type:void

Parameter:

TypeParameterName
struct perf_output_handle *handle
unsigned longsize
477  wakeup = Not Not (aux_flags & cord was truncated to fit )
478  rb = rb
482  If aux_overwrite Then
483  aux_flags |= snapshot from overwrite mode
485  aux_head = head
486  AUX area = aux_head
487  Else
488  aux_flags &= ~snapshot from overwrite mode
490  aux_head = AUX area
491  AUX area += size
506  If size || aux_flags & ~snapshot from overwrite mode Then perf_event_aux_event(event, aux_head, size, aux_flags)
510  WRITE_ONCE(AUX area is defined by aux_{offset,size} fields that should be set* by the userspace, so that* aux_offset >= data_offset + data_size* prior to mmap()ing it, AUX area )
511  If rb_need_aux_wakeup(rb) Then wakeup = true
514  If wakeup Then
515  If aux_flags & cord was truncated to fit Then pending_disable = smp_processor_id()
517  perf_output_wakeup(handle)
520  event = NULL
522  WRITE_ONCE(aux_nest, 0)
524  rb_free_aux(rb)
525  ring_buffer_put(rb)