forked from Minki/linux
tracing: Rename trace_event_mutex to trace_event_sem
trace_event_mutex is an rw semaphore now, not a mutex, change the name. Link: http://lkml.kernel.org/r/513D843B.40109@huawei.com Signed-off-by: zhangwei(Jovi) <jovi.zhangwei@huawei.com> [ Forward ported to my new code ] Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
This commit is contained in:
parent
36a78e9e87
commit
52f6ad6dc3
@ -1584,7 +1584,7 @@ int trace_add_event_call(struct ftrace_event_call *call)
|
||||
}
|
||||
|
||||
/*
|
||||
* Must be called under locking both of event_mutex and trace_event_mutex.
|
||||
* Must be called under locking both of event_mutex and trace_event_sem.
|
||||
*/
|
||||
static void __trace_remove_event_call(struct ftrace_event_call *call)
|
||||
{
|
||||
@ -1597,9 +1597,9 @@ static void __trace_remove_event_call(struct ftrace_event_call *call)
|
||||
void trace_remove_event_call(struct ftrace_event_call *call)
|
||||
{
|
||||
mutex_lock(&event_mutex);
|
||||
down_write(&trace_event_mutex);
|
||||
down_write(&trace_event_sem);
|
||||
__trace_remove_event_call(call);
|
||||
up_write(&trace_event_mutex);
|
||||
up_write(&trace_event_sem);
|
||||
mutex_unlock(&event_mutex);
|
||||
}
|
||||
|
||||
@ -1707,7 +1707,7 @@ static void trace_module_remove_events(struct module *mod)
|
||||
struct ftrace_event_call *call, *p;
|
||||
bool clear_trace = false;
|
||||
|
||||
down_write(&trace_event_mutex);
|
||||
down_write(&trace_event_sem);
|
||||
list_for_each_entry_safe(call, p, &ftrace_events, list) {
|
||||
if (call->mod == mod) {
|
||||
if (call->flags & TRACE_EVENT_FL_WAS_ENABLED)
|
||||
@ -1725,7 +1725,7 @@ static void trace_module_remove_events(struct module *mod)
|
||||
list_del(&file_ops->list);
|
||||
kfree(file_ops);
|
||||
}
|
||||
up_write(&trace_event_mutex);
|
||||
up_write(&trace_event_sem);
|
||||
|
||||
/*
|
||||
* It is safest to reset the ring buffer if the module being unloaded
|
||||
@ -2262,9 +2262,9 @@ int event_trace_add_tracer(struct dentry *parent, struct trace_array *tr)
|
||||
if (ret)
|
||||
goto out_unlock;
|
||||
|
||||
down_write(&trace_event_mutex);
|
||||
down_write(&trace_event_sem);
|
||||
__trace_add_event_dirs(tr);
|
||||
up_write(&trace_event_mutex);
|
||||
up_write(&trace_event_sem);
|
||||
|
||||
out_unlock:
|
||||
mutex_unlock(&event_mutex);
|
||||
@ -2287,9 +2287,9 @@ early_event_add_tracer(struct dentry *parent, struct trace_array *tr)
|
||||
if (ret)
|
||||
goto out_unlock;
|
||||
|
||||
down_write(&trace_event_mutex);
|
||||
down_write(&trace_event_sem);
|
||||
__trace_early_add_event_dirs(tr);
|
||||
up_write(&trace_event_mutex);
|
||||
up_write(&trace_event_sem);
|
||||
|
||||
out_unlock:
|
||||
mutex_unlock(&event_mutex);
|
||||
@ -2304,10 +2304,10 @@ int event_trace_del_tracer(struct trace_array *tr)
|
||||
|
||||
mutex_lock(&event_mutex);
|
||||
|
||||
down_write(&trace_event_mutex);
|
||||
down_write(&trace_event_sem);
|
||||
__trace_remove_event_dirs(tr);
|
||||
debugfs_remove_recursive(tr->event_dir);
|
||||
up_write(&trace_event_mutex);
|
||||
up_write(&trace_event_sem);
|
||||
|
||||
tr->event_dir = NULL;
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
/* must be a power of 2 */
|
||||
#define EVENT_HASHSIZE 128
|
||||
|
||||
DECLARE_RWSEM(trace_event_mutex);
|
||||
DECLARE_RWSEM(trace_event_sem);
|
||||
|
||||
static struct hlist_head event_hash[EVENT_HASHSIZE] __read_mostly;
|
||||
|
||||
@ -826,12 +826,12 @@ static int trace_search_list(struct list_head **list)
|
||||
|
||||
void trace_event_read_lock(void)
|
||||
{
|
||||
down_read(&trace_event_mutex);
|
||||
down_read(&trace_event_sem);
|
||||
}
|
||||
|
||||
void trace_event_read_unlock(void)
|
||||
{
|
||||
up_read(&trace_event_mutex);
|
||||
up_read(&trace_event_sem);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -854,7 +854,7 @@ int register_ftrace_event(struct trace_event *event)
|
||||
unsigned key;
|
||||
int ret = 0;
|
||||
|
||||
down_write(&trace_event_mutex);
|
||||
down_write(&trace_event_sem);
|
||||
|
||||
if (WARN_ON(!event))
|
||||
goto out;
|
||||
@ -909,14 +909,14 @@ int register_ftrace_event(struct trace_event *event)
|
||||
|
||||
ret = event->type;
|
||||
out:
|
||||
up_write(&trace_event_mutex);
|
||||
up_write(&trace_event_sem);
|
||||
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(register_ftrace_event);
|
||||
|
||||
/*
|
||||
* Used by module code with the trace_event_mutex held for write.
|
||||
* Used by module code with the trace_event_sem held for write.
|
||||
*/
|
||||
int __unregister_ftrace_event(struct trace_event *event)
|
||||
{
|
||||
@ -931,9 +931,9 @@ int __unregister_ftrace_event(struct trace_event *event)
|
||||
*/
|
||||
int unregister_ftrace_event(struct trace_event *event)
|
||||
{
|
||||
down_write(&trace_event_mutex);
|
||||
down_write(&trace_event_sem);
|
||||
__unregister_ftrace_event(event);
|
||||
up_write(&trace_event_mutex);
|
||||
up_write(&trace_event_sem);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -33,7 +33,7 @@ trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry);
|
||||
|
||||
/* used by module unregistering */
|
||||
extern int __unregister_ftrace_event(struct trace_event *event);
|
||||
extern struct rw_semaphore trace_event_mutex;
|
||||
extern struct rw_semaphore trace_event_sem;
|
||||
|
||||
#define MAX_MEMHEX_BYTES 8
|
||||
#define HEX_CHARS (MAX_MEMHEX_BYTES*2 + 1)
|
||||
|
Loading…
Reference in New Issue
Block a user