|
@@ -2032,6 +2032,10 @@ int symbol__init(struct perf_env *env)
|
|
|
symbol_conf.sym_list_str, "symbol") < 0)
|
|
|
goto out_free_tid_list;
|
|
|
|
|
|
+ if (setup_list(&symbol_conf.bt_stop_list,
|
|
|
+ symbol_conf.bt_stop_list_str, "symbol") < 0)
|
|
|
+ goto out_free_sym_list;
|
|
|
+
|
|
|
/*
|
|
|
* A path to symbols of "/" is identical to ""
|
|
|
* reset here for simplicity.
|
|
@@ -2049,6 +2053,8 @@ int symbol__init(struct perf_env *env)
|
|
|
symbol_conf.initialized = true;
|
|
|
return 0;
|
|
|
|
|
|
+out_free_sym_list:
|
|
|
+ strlist__delete(symbol_conf.sym_list);
|
|
|
out_free_tid_list:
|
|
|
intlist__delete(symbol_conf.tid_list);
|
|
|
out_free_pid_list:
|
|
@@ -2064,6 +2070,7 @@ void symbol__exit(void)
|
|
|
{
|
|
|
if (!symbol_conf.initialized)
|
|
|
return;
|
|
|
+ strlist__delete(symbol_conf.bt_stop_list);
|
|
|
strlist__delete(symbol_conf.sym_list);
|
|
|
strlist__delete(symbol_conf.dso_list);
|
|
|
strlist__delete(symbol_conf.comm_list);
|
|
@@ -2071,6 +2078,7 @@ void symbol__exit(void)
|
|
|
intlist__delete(symbol_conf.pid_list);
|
|
|
vmlinux_path__exit();
|
|
|
symbol_conf.sym_list = symbol_conf.dso_list = symbol_conf.comm_list = NULL;
|
|
|
+ symbol_conf.bt_stop_list = NULL;
|
|
|
symbol_conf.initialized = false;
|
|
|
}
|
|
|
|