Messages in this thread |  | | From | Namhyung Kim <> | Subject | Re: [PATCH 10/13] tracing/uprobes: Fetch args before reserving a ring buffer | Date | Tue, 05 Nov 2013 10:12:46 +0900 |
| |
Hi Oleg,
On Mon, 4 Nov 2013 15:35:17 +0100, Oleg Nesterov wrote: > Hi Namhyung, > > On 11/04, Namhyung Kim wrote: >> >> >> >> >> + if (atomic_dec_and_test(&uprobe_buffer_ref)) { >> >> + free_percpu(uprobe_cpu_buffer); >> >> + uprobe_cpu_buffer = NULL; >> >> + } >> >> + >> >> WARN_ON(!uprobe_filter_is_empty(&tu->filter)); >> > >> > Do we really need atomic_t? probe_event_enable/disable is called under >> > event_mutex and we rely on this fact anyway. >> >> Looking at the code, it seems probe_event_enable/disable() is called >> without event_mutex when it called from sys_perf_event_open(). > > Where? > > __ftrace_set_clr_event(), perf_trace_init() or perf_trace_destroy() > hold event_mutex. We rely on this fact anyway.
Ah, you're right. My eyes simply missed it. ;-)
Thanks, Namhyung
|  |