perf tools: Catch a few uncheck calloc/malloc's
There were a few stray calloc()'s and malloc()'s which were not having their return values checked for success. As the calling code either already coped with failure or didn't actually care we just return -ENOMEM at that point. Cc: Ingo Molnar <mingo@elte.hu> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Chris Samuel <chris@csamuel.org> LKML-Reference: <4CDDF95A.1050400@csamuel.org> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
		
					parent
					
						
							
								965bb6beaf
							
						
					
				
			
			
				commit
				
					
						ce47dc56a2
					
				
			
		
					 5 changed files with 15 additions and 0 deletions
				
			
		|  | @ -736,6 +736,9 @@ static int __cmd_record(int argc, const char **argv) | ||||||
| 	rec_argc = ARRAY_SIZE(record_args) + argc - 1; | 	rec_argc = ARRAY_SIZE(record_args) + argc - 1; | ||||||
| 	rec_argv = calloc(rec_argc + 1, sizeof(char *)); | 	rec_argv = calloc(rec_argc + 1, sizeof(char *)); | ||||||
| 
 | 
 | ||||||
|  | 	if (rec_argv == NULL) | ||||||
|  | 		return -ENOMEM; | ||||||
|  | 
 | ||||||
| 	for (i = 0; i < ARRAY_SIZE(record_args); i++) | 	for (i = 0; i < ARRAY_SIZE(record_args); i++) | ||||||
| 		rec_argv[i] = strdup(record_args[i]); | 		rec_argv[i] = strdup(record_args[i]); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -943,6 +943,9 @@ static int __cmd_record(int argc, const char **argv) | ||||||
| 	rec_argc = ARRAY_SIZE(record_args) + argc - 1; | 	rec_argc = ARRAY_SIZE(record_args) + argc - 1; | ||||||
| 	rec_argv = calloc(rec_argc + 1, sizeof(char *)); | 	rec_argv = calloc(rec_argc + 1, sizeof(char *)); | ||||||
| 
 | 
 | ||||||
|  | 	if (rec_argv == NULL) | ||||||
|  | 		return -ENOMEM; | ||||||
|  | 
 | ||||||
| 	for (i = 0; i < ARRAY_SIZE(record_args); i++) | 	for (i = 0; i < ARRAY_SIZE(record_args); i++) | ||||||
| 		rec_argv[i] = strdup(record_args[i]); | 		rec_argv[i] = strdup(record_args[i]); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1860,6 +1860,9 @@ static int __cmd_record(int argc, const char **argv) | ||||||
| 	rec_argc = ARRAY_SIZE(record_args) + argc - 1; | 	rec_argc = ARRAY_SIZE(record_args) + argc - 1; | ||||||
| 	rec_argv = calloc(rec_argc + 1, sizeof(char *)); | 	rec_argv = calloc(rec_argc + 1, sizeof(char *)); | ||||||
| 
 | 
 | ||||||
|  | 	if (rec_argv) | ||||||
|  | 		return -ENOMEM; | ||||||
|  | 
 | ||||||
| 	for (i = 0; i < ARRAY_SIZE(record_args); i++) | 	for (i = 0; i < ARRAY_SIZE(record_args); i++) | ||||||
| 		rec_argv[i] = strdup(record_args[i]); | 		rec_argv[i] = strdup(record_args[i]); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -989,6 +989,9 @@ static int __cmd_record(int argc, const char **argv) | ||||||
| 	rec_argc = ARRAY_SIZE(record_args) + argc - 1; | 	rec_argc = ARRAY_SIZE(record_args) + argc - 1; | ||||||
| 	rec_argv = calloc(rec_argc + 1, sizeof(char *)); | 	rec_argv = calloc(rec_argc + 1, sizeof(char *)); | ||||||
| 
 | 
 | ||||||
|  | 	if (rec_argv == NULL) | ||||||
|  | 		return -ENOMEM; | ||||||
|  | 
 | ||||||
| 	for (i = 0; i < ARRAY_SIZE(record_args); i++) | 	for (i = 0; i < ARRAY_SIZE(record_args); i++) | ||||||
| 		rec_argv[i] = strdup(record_args[i]); | 		rec_argv[i] = strdup(record_args[i]); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1005,6 +1005,9 @@ int event__synthesize_attr(struct perf_event_attr *attr, u16 ids, u64 *id, | ||||||
| 
 | 
 | ||||||
| 	ev = malloc(size); | 	ev = malloc(size); | ||||||
| 
 | 
 | ||||||
|  | 	if (ev == NULL) | ||||||
|  | 		return -ENOMEM; | ||||||
|  | 
 | ||||||
| 	ev->attr.attr = *attr; | 	ev->attr.attr = *attr; | ||||||
| 	memcpy(ev->attr.id, id, ids * sizeof(u64)); | 	memcpy(ev->attr.id, id, ids * sizeof(u64)); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Chris Samuel
				Chris Samuel