From: Alexey Kodanev <alexey.kodanev@oracle.com>
To: manjeet.p@samsung.com,
"ltp-list@lists.sourceforge.net" <ltp-list@lists.sourceforge.net>
Cc: "ajeet.y@samsung.com" <ajeet.y@samsung.com>,
AKHILESH KUMAR <akhilesh.k@samsung.com>
Subject: Re: [LTP] [PATCH]: Fix memory leak by freeing buf
Date: Fri, 19 Jun 2015 15:09:44 +0300 [thread overview]
Message-ID: <55840688.1010202@oracle.com> (raw)
In-Reply-To: <144413988.54651434713150877.JavaMail.weblogic@ep2mlwas06b>
Hi!
On 06/19/2015 02:25 PM, Manjeet Pawar wrote:
> From: Manjeet Pawar <manjeet.p@samsung.com>
> Date: Fri, 19 Jun 2015 16:45:54 +0530
> Subject: [PATCH] testcases/open_posix_testsuite/functional/semaphores: Fix memory leak by freeing buf
>
> This patch fix memory leak by freeing memory leak before function return
>
> Signed-off-by: Manjeet Pawar <manjeet.p@samsung.com>
> Signed-off-by: Akhilesh Kumar <akhilesh.k@samsung.com>
> ---
> .../functional/semaphores/sem_conpro.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/testcases/open_posix_testsuite/functional/semaphores/sem_conpro.c b/testcases/open_posix_testsuite/functional/semaphores/sem_conpro.c
> index f5f1abf..f3a4cfb 100644
> --- a/testcases/open_posix_testsuite/functional/semaphores/sem_conpro.c
> +++ b/testcases/open_posix_testsuite/functional/semaphores/sem_conpro.c
> @@ -106,19 +106,23 @@ int main(int argc, char *argv[])
>
> #ifndef _POSIX_SEMAPHORES
> printf("_POSIX_SEMAPHORES is not defined \n");
> + free(buf);
> return PTS_UNRESOLVED;
> #endif
> if (-1 == sem_init(&(buf->occupied), shared, occupied_value)) {
> perror("sem_init didn't return success \n");
> printf("hello \n");
> + free(buf);
> return PTS_UNRESOLVED;
> }
> if (-1 == sem_init(&buf->empty, shared, empty_value)) {
> perror("sem_init didn't return success \n");
> + free(buf);
> return PTS_UNRESOLVED;
> }
> if (-1 == sem_init(&buf->lock, shared, lock_value)) {
> perror("sem_init didn't return success \n");
> + free(buf);
> return PTS_UNRESOLVED;
> }
> in = out = 0;
> @@ -129,5 +133,6 @@ int main(int argc, char *argv[])
> pthread_join(pro, NULL);
> sem_destroy(&buf->occupied);
> sem_destroy(&buf->empty);
> + free(buf);
> return PTS_PASS;
> }
The program terminating after free() so it will be freed in any case, I
don't see memory leak here.
I think the better change would be to check the return value from
malloc() (e.g. using SAFE_MALLOC) or allocate 'buf' on the stack.
Thanks,
Alexey
------------------------------------------------------------------------------
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
next prev parent reply other threads:[~2015-06-19 12:06 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-19 11:25 [LTP] [PATCH]: Fix memory leak by freeing buf Manjeet Pawar
2015-06-19 12:09 ` Alexey Kodanev [this message]
2015-06-19 12:20 ` Alexey Kodanev
-- strict thread matches above, loose matches on Subject: below --
2015-05-28 4:44 Manjeet Pawar
2015-06-01 14:49 ` Cyril Hrubis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55840688.1010202@oracle.com \
--to=alexey.kodanev@oracle.com \
--cc=ajeet.y@samsung.com \
--cc=akhilesh.k@samsung.com \
--cc=ltp-list@lists.sourceforge.net \
--cc=manjeet.p@samsung.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox