[PATCH] perf help:Fail check on dynamic allocation

zhaimingbing posted 1 patch 2 years ago
There is a newer version of this series
tools/perf/builtin-help.c | 5 +++++
1 file changed, 5 insertions(+)
[PATCH] perf help:Fail check on dynamic allocation
Posted by zhaimingbing 2 years ago
Return NULL if dynamic allocation failed.

Signed-off-by: zhaimingbing <zhaimingbing@cmss.chinamobile.com>
---
 tools/perf/builtin-help.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/tools/perf/builtin-help.c b/tools/perf/builtin-help.c
index b2a368ae2..e89734dbb 100644
--- a/tools/perf/builtin-help.c
+++ b/tools/perf/builtin-help.c
@@ -196,6 +196,9 @@ static void add_man_viewer(const char *name)
 	while (*p)
 		p = &((*p)->next);
 	*p = zalloc(sizeof(**p) + len + 1);
+	if(!*p)
+		return NULL;
+
 	strcpy((*p)->name, name);
 }
 
@@ -211,6 +214,8 @@ static void do_add_man_viewer_info(const char *name,
 				   const char *value)
 {
 	struct man_viewer_info_list *new = zalloc(sizeof(*new) + len + 1);
+	if(!new)
+		return NULL;
 
 	strncpy(new->name, name, len);
 	new->info = strdup(value);
-- 
2.33.0
Re: [PATCH] perf help:Fail check on dynamic allocation
Posted by kernel test robot 2 years ago
Hi zhaimingbing,

kernel test robot noticed the following build errors:

[auto build test ERROR on tip/perf/core]
[also build test ERROR on perf-tools/perf-tools acme/perf/core linus/master v6.7-rc2 next-20231124]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/zhaimingbing/perf-help-Fail-check-on-dynamic-allocation/20231124-164725
base:   tip/perf/core
patch link:    https://lore.kernel.org/r/20231124083910.10169-1-zhaimingbing%40cmss.chinamobile.com
patch subject: [PATCH] perf help:Fail check on dynamic allocation
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231124/202311242306.fuT56YtA-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202311242306.fuT56YtA-lkp@intel.com/

All errors (new ones prefixed by >>):

   Makefile.config:1153: libpfm4 not found, disables libpfm4 support. Please install libpfm4-dev
     PERF_VERSION = 6.7.rc1.g299992a2f4e2
   builtin-help.c: In function 'add_man_viewer':
>> builtin-help.c:200:24: error: 'return' with a value, in function returning void [-Werror=return-type]
     200 |                 return NULL;
         |                        ^~~~
   builtin-help.c:191:13: note: declared here
     191 | static void add_man_viewer(const char *name)
         |             ^~~~~~~~~~~~~~
   builtin-help.c: In function 'do_add_man_viewer_info':
   builtin-help.c:218:24: error: 'return' with a value, in function returning void [-Werror=return-type]
     218 |                 return NULL;
         |                        ^~~~
   builtin-help.c:212:13: note: declared here
     212 | static void do_add_man_viewer_info(const char *name,
         |             ^~~~~~~~~~~~~~~~~~~~~~
   cc1: all warnings being treated as errors
   make[6]: *** [tools/build/Makefile.build:105: tools/perf/builtin-help.o] Error 1
   make[6]: *** Waiting for unfinished jobs....
   make[5]: *** [Makefile.perf:678: tools/perf/perf-in.o] Error 2
   make[5]: *** Waiting for unfinished jobs....
   make[4]: *** [Makefile.perf:242: sub-make] Error 2
   make[3]: *** [Makefile:70: all] Error 2

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki