Function report |
Source Code:kernel\events\core.c |
Create Date:2022-07-28 13:34:50 |
| Last Modify:2022-05-20 07:50:19 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Kill an event dead; while event:refcount will preserve the event* object, it will not preserve its functionality. Once the last 'user'* gives up the object, we'll destroy the thing.
Proto:int perf_event_release_kernel(struct perf_event *event)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct perf_event * | event |
| 4728 | If Not ctx Then |
| 4729 | WARN_ON_ONCE(attach_state & (PERF_ATTACH_CONTEXT | PERF_ATTACH_GROUP)) |
| 4731 | Go to no_ctx |
| 4734 | If Not is_kernel_event(event) Then Remove user event from the owner task. |
| 4737 | ctx = perf_event_ctx_lock(event) |
| 4738 | WARN_ON_ONCE(These fields let us detect when two contexts have both* been cloned (inherited) from a common ancestor.) |
| 4753 | state = PERF_EVENT_STATE_DEAD |
| 4754 | raw_spin_unlock_irq( & Protect the states of the events in the list,* nr_active, and the list:) |
| 4756 | perf_event_ctx_unlock(event, ctx) |
| 4758 | again : |
| 4759 | mutex_lock( & child_mutex) |
| 4783 | mutex_lock( & Protect the list of events. Locking either mutex or lock* is sufficient to ensure the list doesn't change; to change* the list you need to lock both the mutex and the spinlock.) |
| 4784 | mutex_lock( & child_mutex) |
| 4806 | Go to again |
| 4820 | smp_mb() |
| 4821 | wake_up_var(var) |
| 4824 | no_ctx : |
| 4826 | Return 0 |
| Name | Describe |
|---|---|
| measure_residency_fn | |
| hardlockup_detector_perf_init | hardlockup_detector_perf_init - Probe whether NMI event is available at all |
| perf_release | Called when the last reference to the file is gone. |
| unregister_hw_breakpoint | register_hw_breakpoint - unregister a user-space hardware breakpoint*@bp: the breakpoint structure to unregister |
| hardlockup_detector_perf_cleanup | hardlockup_detector_perf_cleanup - Cleanup disabled events and destroy them* Called from lockup_detector_cleanup(). Serialized by the caller. |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |