diff options
Diffstat (limited to 'tools/perf/util/parse-events.c')
| -rw-r--r-- | tools/perf/util/parse-events.c | 62 | 
1 files changed, 31 insertions, 31 deletions
diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index 4c19d5e79d8c..c6fd0479f4cd 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c @@ -138,11 +138,11 @@ struct event_symbol event_symbols_sw[PERF_COUNT_SW_MAX] = {  #define PERF_EVENT_TYPE(config)		__PERF_EVENT_FIELD(config, TYPE)  #define PERF_EVENT_ID(config)		__PERF_EVENT_FIELD(config, EVENT) -#define for_each_subsystem(sys_dir, sys_dirent, sys_next)	       \ -	while (!readdir_r(sys_dir, &sys_dirent, &sys_next) && sys_next)	       \ -	if (sys_dirent.d_type == DT_DIR &&				       \ -	   (strcmp(sys_dirent.d_name, ".")) &&				       \ -	   (strcmp(sys_dirent.d_name, ".."))) +#define for_each_subsystem(sys_dir, sys_dirent)			\ +	while ((sys_dirent = readdir(sys_dir)) != NULL)		\ +		if (sys_dirent->d_type == DT_DIR &&		\ +		    (strcmp(sys_dirent->d_name, ".")) &&	\ +		    (strcmp(sys_dirent->d_name, "..")))  static int tp_event_has_id(struct dirent *sys_dir, struct dirent *evt_dir)  { @@ -159,12 +159,12 @@ static int tp_event_has_id(struct dirent *sys_dir, struct dirent *evt_dir)  	return 0;  } -#define for_each_event(sys_dirent, evt_dir, evt_dirent, evt_next)	       \ -	while (!readdir_r(evt_dir, &evt_dirent, &evt_next) && evt_next)        \ -	if (evt_dirent.d_type == DT_DIR &&				       \ -	   (strcmp(evt_dirent.d_name, ".")) &&				       \ -	   (strcmp(evt_dirent.d_name, "..")) &&				       \ -	   (!tp_event_has_id(&sys_dirent, &evt_dirent))) +#define for_each_event(sys_dirent, evt_dir, evt_dirent)		\ +	while ((evt_dirent = readdir(evt_dir)) != NULL)		\ +		if (evt_dirent->d_type == DT_DIR &&		\ +		    (strcmp(evt_dirent->d_name, ".")) &&	\ +		    (strcmp(evt_dirent->d_name, "..")) &&	\ +		    (!tp_event_has_id(sys_dirent, evt_dirent)))  #define MAX_EVENT_LENGTH 512 @@ -173,7 +173,7 @@ struct tracepoint_path *tracepoint_id_to_path(u64 config)  {  	struct tracepoint_path *path = NULL;  	DIR *sys_dir, *evt_dir; -	struct dirent *sys_next, *evt_next, sys_dirent, evt_dirent; +	struct dirent *sys_dirent, *evt_dirent;  	char id_buf[24];  	int fd;  	u64 id; @@ -184,18 +184,18 @@ struct tracepoint_path *tracepoint_id_to_path(u64 config)  	if (!sys_dir)  		return NULL; -	for_each_subsystem(sys_dir, sys_dirent, sys_next) { +	for_each_subsystem(sys_dir, sys_dirent) {  		snprintf(dir_path, MAXPATHLEN, "%s/%s", tracing_events_path, -			 sys_dirent.d_name); +			 sys_dirent->d_name);  		evt_dir = opendir(dir_path);  		if (!evt_dir)  			continue; -		for_each_event(sys_dirent, evt_dir, evt_dirent, evt_next) { +		for_each_event(sys_dirent, evt_dir, evt_dirent) {  			snprintf(evt_path, MAXPATHLEN, "%s/%s/id", dir_path, -				 evt_dirent.d_name); +				 evt_dirent->d_name);  			fd = open(evt_path, O_RDONLY);  			if (fd < 0)  				continue; @@ -220,9 +220,9 @@ struct tracepoint_path *tracepoint_id_to_path(u64 config)  					free(path);  					return NULL;  				} -				strncpy(path->system, sys_dirent.d_name, +				strncpy(path->system, sys_dirent->d_name,  					MAX_EVENT_LENGTH); -				strncpy(path->name, evt_dirent.d_name, +				strncpy(path->name, evt_dirent->d_name,  					MAX_EVENT_LENGTH);  				return path;  			} @@ -1649,7 +1649,7 @@ static void parse_events_print_error(struct parse_events_error *err,  		buf = _buf; -		/* We're cutting from the beggining. */ +		/* We're cutting from the beginning. */  		if (err->idx > max_err_idx)  			cut = err->idx - max_err_idx; @@ -1812,7 +1812,7 @@ void print_tracepoint_events(const char *subsys_glob, const char *event_glob,  			     bool name_only)  {  	DIR *sys_dir, *evt_dir; -	struct dirent *sys_next, *evt_next, sys_dirent, evt_dirent; +	struct dirent *sys_dirent, *evt_dirent;  	char evt_path[MAXPATHLEN];  	char dir_path[MAXPATHLEN];  	char **evt_list = NULL; @@ -1830,20 +1830,20 @@ restart:  			goto out_close_sys_dir;  	} -	for_each_subsystem(sys_dir, sys_dirent, sys_next) { +	for_each_subsystem(sys_dir, sys_dirent) {  		if (subsys_glob != NULL && -		    !strglobmatch(sys_dirent.d_name, subsys_glob)) +		    !strglobmatch(sys_dirent->d_name, subsys_glob))  			continue;  		snprintf(dir_path, MAXPATHLEN, "%s/%s", tracing_events_path, -			 sys_dirent.d_name); +			 sys_dirent->d_name);  		evt_dir = opendir(dir_path);  		if (!evt_dir)  			continue; -		for_each_event(sys_dirent, evt_dir, evt_dirent, evt_next) { +		for_each_event(sys_dirent, evt_dir, evt_dirent) {  			if (event_glob != NULL && -			    !strglobmatch(evt_dirent.d_name, event_glob)) +			    !strglobmatch(evt_dirent->d_name, event_glob))  				continue;  			if (!evt_num_known) { @@ -1852,7 +1852,7 @@ restart:  			}  			snprintf(evt_path, MAXPATHLEN, "%s:%s", -				 sys_dirent.d_name, evt_dirent.d_name); +				 sys_dirent->d_name, evt_dirent->d_name);  			evt_list[evt_i] = strdup(evt_path);  			if (evt_list[evt_i] == NULL) @@ -1905,7 +1905,7 @@ out_close_sys_dir:  int is_valid_tracepoint(const char *event_string)  {  	DIR *sys_dir, *evt_dir; -	struct dirent *sys_next, *evt_next, sys_dirent, evt_dirent; +	struct dirent *sys_dirent, *evt_dirent;  	char evt_path[MAXPATHLEN];  	char dir_path[MAXPATHLEN]; @@ -1913,17 +1913,17 @@ int is_valid_tracepoint(const char *event_string)  	if (!sys_dir)  		return 0; -	for_each_subsystem(sys_dir, sys_dirent, sys_next) { +	for_each_subsystem(sys_dir, sys_dirent) {  		snprintf(dir_path, MAXPATHLEN, "%s/%s", tracing_events_path, -			 sys_dirent.d_name); +			 sys_dirent->d_name);  		evt_dir = opendir(dir_path);  		if (!evt_dir)  			continue; -		for_each_event(sys_dirent, evt_dir, evt_dirent, evt_next) { +		for_each_event(sys_dirent, evt_dir, evt_dirent) {  			snprintf(evt_path, MAXPATHLEN, "%s:%s", -				 sys_dirent.d_name, evt_dirent.d_name); +				 sys_dirent->d_name, evt_dirent->d_name);  			if (!strcmp(evt_path, event_string)) {  				closedir(evt_dir);  				closedir(sys_dir);  | 
