Message ID | 20241121133212.6809-1-liujing@cmss.chinamobile.com (mailing list archive) |
---|---|
State | Rejected |
Delegated to: | Shuah Khan |
Headers | show |
Series | cpupower: Fixing memory leaks | expand |
On 11/21/24 06:32, liujing wrote: > If execlp fails, page memory is not freed, so fix it. How did you find the problem? > > Signed-off-by: liujing <liujing@cmss.chinamobile.com> > > diff --git a/tools/power/cpupower/utils/cpupower.c b/tools/power/cpupower/utils/cpupower.c > index 9ec973165af1..36d486199630 100644 > --- a/tools/power/cpupower/utils/cpupower.c > +++ b/tools/power/cpupower/utils/cpupower.c > @@ -98,7 +98,7 @@ static int print_man_page(const char *subpage) > } > > execlp("man", "man", page, NULL); > - > + free(page); The memory gets free'ed when process exits. Why do you need this? > /* should not be reached */ > return -EINVAL; > } thanks, -- Shuah
diff --git a/tools/power/cpupower/utils/cpupower.c b/tools/power/cpupower/utils/cpupower.c index 9ec973165af1..36d486199630 100644 --- a/tools/power/cpupower/utils/cpupower.c +++ b/tools/power/cpupower/utils/cpupower.c @@ -98,7 +98,7 @@ static int print_man_page(const char *subpage) } execlp("man", "man", page, NULL); - + free(page); /* should not be reached */ return -EINVAL; }
If execlp fails, page memory is not freed, so fix it. Signed-off-by: liujing <liujing@cmss.chinamobile.com>