Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\events\core.c Create Date:2022-07-28 13:41:21
Last Modify:2022-05-20 07:50:19 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:perf_free_event

Proto:static void perf_free_event(struct perf_event *event, struct perf_event_context *ctx)

Type:void

Parameter:

TypeParameterName
struct perf_event *event
struct perf_event_context *ctx
11940  parent = parent
11942  If WARN_ON_ONCE(!parent) Then Return
11945  mutex_lock( & child_mutex)
11946  list_del_init - deletes entry from list and reinitialize it.*@entry: the element to delete from the list.
11947  mutex_unlock - release the mutex*@lock: the mutex to be released* Unlock a mutex that has been locked by this task previously.* This function must not be used in interrupt context. Unlocking* of a not locked mutex is not allowed.
11949  put_event(parent)
11951  raw_spin_lock_irq( & Protect the states of the events in the list,* nr_active, and the list:)
11952  perf_group_detach(event)
11953  Remove an event from the lists for its context.* Must be called with ctx->mutex and ctx->lock held.
11954  raw_spin_unlock_irq( & Protect the states of the events in the list,* nr_active, and the list:)
11955  Used to free events which have a known refcount of 1, such as in error paths* where the event isn't exposed yet and inherited events.
Caller
NameDescribe
perf_event_free_taskFree a context as created by inheritance by perf_event_init_task() below,* used by fork() in case of fail.* Even though the task has never lived, the context and events have been* exposed through the child_list, so we must take care tearing it all down.