From: zhanghailiang <zhang.zhanghailiang@huawei.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: kwolf@redhat.com, lkurusa@redhat.com, qemu-trivial@nongnu.org,
jan.kiszka@siemens.com, riku.voipio@iki.fi, mjt@tls.msk.ru,
qemu-devel@nongnu.org, lcapitulino@redhat.com,
stefanha@redhat.com, luonengjun@huawei.com, pbonzini@redhat.com,
peter.huangpeng@huawei.com, alex.bennee@linaro.org,
rth@twiddle.net
Subject: Re: [Qemu-trivial] [PATCH v6 05/10] util/path: Use the GLib memory allocation routines
Date: Mon, 18 Aug 2014 13:59:46 +0800 [thread overview]
Message-ID: <53F19652.8030009@huawei.com> (raw)
In-Reply-To: <20140814101557.GB31346@redhat.com>
On 2014/8/14 18:15, Michael S. Tsirkin wrote:
> On Thu, Aug 14, 2014 at 03:29:16PM +0800, zhanghailiang wrote:
>> In this file, we don't check the return value of malloc/strdup/realloc which may fail.
>> Instead of using these routines, we use the GLib memory APIs g_malloc/g_strdup/g_realloc.
>> They will exit on allocation failure, so there is no need to test for failure,
>> which would be fine for setup.
>>
>> Signed-off-by: zhanghailiang<zhang.zhanghailiang@huawei.com>
>> Reviewed-by: Alex Bennée<alex.bennee@linaro.org>
>> ---
>> util/path.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/util/path.c b/util/path.c
>> index 5c59d9f..e152f2a 100644
>> --- a/util/path.c
>> +++ b/util/path.c
>> @@ -45,8 +45,8 @@ static struct pathelem *new_entry(const char *root,
>> struct pathelem *parent,
>> const char *name)
>> {
>> - struct pathelem *new = malloc(sizeof(*new));
>> - new->name = strdup(name);
>> + struct pathelem *new = g_malloc(sizeof(*new));
>> + new->name = g_strdup(name);
>> new->pathname = g_strdup_printf("%s/%s", root, name);
>> new->num_entries = 0;
>> return new;
>
> Would not we have to free name using g_free as well?
>
Yes, Good catch, i will do this, Thanks.
>> @@ -88,7 +88,7 @@ static struct pathelem *add_entry(struct pathelem *root, const char *name,
>>
>> root->num_entries++;
>>
>> - root = realloc(root, sizeof(*root)
>> + root = g_realloc(root, sizeof(*root)
>> + sizeof(root->entries[0])*root->num_entries);
>> e =&root->entries[root->num_entries-1];
>
>> --
>> 1.7.12.4
>>
>
> .
>
WARNING: multiple messages have this Message-ID (diff)
From: zhanghailiang <zhang.zhanghailiang@huawei.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: kwolf@redhat.com, lkurusa@redhat.com, qemu-trivial@nongnu.org,
jan.kiszka@siemens.com, riku.voipio@iki.fi, mjt@tls.msk.ru,
qemu-devel@nongnu.org, lcapitulino@redhat.com,
stefanha@redhat.com, luonengjun@huawei.com, pbonzini@redhat.com,
peter.huangpeng@huawei.com, alex.bennee@linaro.org,
rth@twiddle.net
Subject: Re: [Qemu-devel] [PATCH v6 05/10] util/path: Use the GLib memory allocation routines
Date: Mon, 18 Aug 2014 13:59:46 +0800 [thread overview]
Message-ID: <53F19652.8030009@huawei.com> (raw)
In-Reply-To: <20140814101557.GB31346@redhat.com>
On 2014/8/14 18:15, Michael S. Tsirkin wrote:
> On Thu, Aug 14, 2014 at 03:29:16PM +0800, zhanghailiang wrote:
>> In this file, we don't check the return value of malloc/strdup/realloc which may fail.
>> Instead of using these routines, we use the GLib memory APIs g_malloc/g_strdup/g_realloc.
>> They will exit on allocation failure, so there is no need to test for failure,
>> which would be fine for setup.
>>
>> Signed-off-by: zhanghailiang<zhang.zhanghailiang@huawei.com>
>> Reviewed-by: Alex Bennée<alex.bennee@linaro.org>
>> ---
>> util/path.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/util/path.c b/util/path.c
>> index 5c59d9f..e152f2a 100644
>> --- a/util/path.c
>> +++ b/util/path.c
>> @@ -45,8 +45,8 @@ static struct pathelem *new_entry(const char *root,
>> struct pathelem *parent,
>> const char *name)
>> {
>> - struct pathelem *new = malloc(sizeof(*new));
>> - new->name = strdup(name);
>> + struct pathelem *new = g_malloc(sizeof(*new));
>> + new->name = g_strdup(name);
>> new->pathname = g_strdup_printf("%s/%s", root, name);
>> new->num_entries = 0;
>> return new;
>
> Would not we have to free name using g_free as well?
>
Yes, Good catch, i will do this, Thanks.
>> @@ -88,7 +88,7 @@ static struct pathelem *add_entry(struct pathelem *root, const char *name,
>>
>> root->num_entries++;
>>
>> - root = realloc(root, sizeof(*root)
>> + root = g_realloc(root, sizeof(*root)
>> + sizeof(root->entries[0])*root->num_entries);
>> e =&root->entries[root->num_entries-1];
>
>> --
>> 1.7.12.4
>>
>
> .
>
next prev parent reply other threads:[~2014-08-18 6:00 UTC|newest]
Thread overview: 86+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-14 7:29 [Qemu-trivial] [PATCH v6 00/10] fix three bugs about use-after-free and several api abuse zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 01/10] l2cap: fix access freed memory zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:19 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:19 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-15 14:58 ` [Qemu-trivial] " Michael Tokarev
2014-08-15 14:58 ` [Qemu-devel] " Michael Tokarev
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 02/10] monitor: " zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:30 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:30 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-15 18:25 ` [Qemu-trivial] " Luiz Capitulino
2014-08-15 18:25 ` [Qemu-devel] " Luiz Capitulino
2014-08-17 9:45 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-17 9:45 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-17 10:55 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-17 10:55 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 03/10] virtio-blk: fix reference a pointer which might be freed zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:37 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:37 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-14 10:39 ` [Qemu-trivial] " Michael Tokarev
2014-08-14 10:39 ` [Qemu-devel] " Michael Tokarev
2014-08-14 11:16 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 11:16 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-18 11:49 ` [Qemu-trivial] " Michael Tokarev
2014-08-18 11:49 ` [Qemu-devel] " Michael Tokarev
2014-08-18 20:17 ` Michael S. Tsirkin
2014-08-18 20:17 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-19 7:19 ` Michael Tokarev
2014-08-19 7:19 ` [Qemu-devel] " Michael Tokarev
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 04/10] ivshmem: check the value returned by fstat() zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:12 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:12 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-15 14:59 ` [Qemu-trivial] " Michael Tokarev
2014-08-15 14:59 ` [Qemu-devel] " Michael Tokarev
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 05/10] util/path: Use the GLib memory allocation routines zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:15 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:15 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-18 5:59 ` zhanghailiang [this message]
2014-08-18 5:59 ` zhanghailiang
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 06/10] slirp/misc: Use g_malloc() instead of malloc() zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:31 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:31 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-18 0:29 ` [Qemu-trivial] " zhanghailiang
2014-08-18 0:29 ` [Qemu-devel] " zhanghailiang
2014-08-18 5:56 ` [Qemu-trivial] " zhanghailiang
2014-08-18 5:56 ` [Qemu-devel] " zhanghailiang
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 07/10] linux-user: check return value " zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 13:31 ` [Qemu-trivial] " Riku Voipio
2014-08-14 13:31 ` Riku Voipio
2014-08-14 18:04 ` [Qemu-trivial] " Michael Tokarev
2014-08-14 18:04 ` Michael Tokarev
2014-08-18 20:17 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-18 20:17 ` Michael S. Tsirkin
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 08/10] tests/bios-tables-test: check the value returned by fopen() zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:32 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:32 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-18 0:32 ` [Qemu-trivial] " zhanghailiang
2014-08-18 0:32 ` [Qemu-devel] " zhanghailiang
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 09/10] tcg: check return value of fopen() zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:33 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:33 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-15 15:03 ` [Qemu-trivial] " Michael Tokarev
2014-08-15 15:03 ` [Qemu-devel] " Michael Tokarev
2014-08-15 16:53 ` Richard Henderson
2014-08-15 16:53 ` [Qemu-devel] " Richard Henderson
2014-08-18 6:21 ` zhanghailiang
2014-08-18 6:21 ` [Qemu-devel] " zhanghailiang
2014-08-14 7:29 ` [Qemu-trivial] [PATCH v6 10/10] block/vvfat: fix setbuf stream parameter may be NULL zhanghailiang
2014-08-14 7:29 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:36 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:36 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-18 0:55 ` [Qemu-trivial] " zhanghailiang
2014-08-18 0:55 ` [Qemu-devel] " zhanghailiang
2014-08-14 10:17 ` [Qemu-trivial] [PATCH v6 00/10] fix three bugs about use-after-free and several api abuse Michael S. Tsirkin
2014-08-14 10:17 ` [Qemu-devel] " Michael S. Tsirkin
2014-08-14 10:38 ` [Qemu-trivial] " Michael S. Tsirkin
2014-08-14 10:38 ` [Qemu-devel] " Michael S. Tsirkin
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=53F19652.8030009@huawei.com \
--to=zhang.zhanghailiang@huawei.com \
--cc=alex.bennee@linaro.org \
--cc=jan.kiszka@siemens.com \
--cc=kwolf@redhat.com \
--cc=lcapitulino@redhat.com \
--cc=lkurusa@redhat.com \
--cc=luonengjun@huawei.com \
--cc=mjt@tls.msk.ru \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.huangpeng@huawei.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-trivial@nongnu.org \
--cc=riku.voipio@iki.fi \
--cc=rth@twiddle.net \
--cc=stefanha@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.