From: Paolo Bonzini <pbonzini@redhat.com>
To: haris iqbal <haris.phnx@gmail.com>,
Peter Maydell <peter.maydell@linaro.org>
Cc: QEMU Trivial <qemu-trivial@nongnu.org>,
QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH] Changed malloc() to g_malloc() at places where return value was not being checked
Date: Tue, 22 Mar 2016 17:05:22 +0100 [thread overview]
Message-ID: <56F16D42.1030108@redhat.com> (raw)
In-Reply-To: <CAE_WKMwwyURfHKBh35YYWbHBLLekGMaaamOGZAtv_v2r=cJ-8A@mail.gmail.com>
On 22/03/2016 16:52, haris iqbal wrote:
> On Tue, Mar 22, 2016 at 8:27 PM, Peter Maydell <peter.maydell@linaro.org> wrote:
>> On 22 March 2016 at 14:33, Md Haris Iqbal <haris.phnx@gmail.com> wrote:
>>> Signed-off-by: Md Haris Iqbal <haris.phnx@gmail.com>
>>
>> Hi. I'm afraid you can't just change malloc() calls to
>> g_malloc() without also changing the corresponding free()
>> calls to g_free().
>
> Ok, I will do that.
>
>>
>> Also, at least the thunk.c code has had patches and
>> discussion on-list regarding its malloc() calls. It's
>> often worth searching the mailing list to check you won't
>> be repeating work that somebody else is already doing.
>>
>>> ---
>>> bsd-user/elfload.c | 2 +-
>>> bsd-user/qemu.h | 2 +-
>>> linux-user/qemu.h | 2 +-
>>> thunk.c | 2 +-
>>> ui/shader.c | 2 +-
>>> 5 files changed, 5 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/bsd-user/elfload.c b/bsd-user/elfload.c
>>> index 0a6092b..40bd1f2 100644
>>> --- a/bsd-user/elfload.c
>>> +++ b/bsd-user/elfload.c
>>> @@ -1064,7 +1064,7 @@ static void load_symbols(struct elfhdr *hdr, int fd)
>>>
>>> found:
>>> /* Now know where the strtab and symtab are. Snarf them. */
>>> - s = malloc(sizeof(*s));
>>> + s = g_malloc(sizeof(*s));
>>> syms = malloc(symtab.sh_size);
>>> if (!syms) {
>>> free(s);
>
> I did that because the other one has a return value check. Which (as
> discussed with Paolo Bonzini) should be done in a seperate patch.
In this case you can convert syms to g_try_malloc.
Paolo
>>
>> It's very odd to have only part of this data structure be
>> malloc and part g_malloc. We should convert all of it
>> or none of it.
>>
>>> diff --git a/ui/shader.c b/ui/shader.c
>>> index 9264009..43c6f64 100644
>>> --- a/ui/shader.c
>>> +++ b/ui/shader.c
>>> @@ -83,7 +83,7 @@ GLuint qemu_gl_create_compile_shader(GLenum type, const GLchar *src)
>>> glGetShaderiv(shader, GL_COMPILE_STATUS, &status);
>>> if (!status) {
>>> glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &length);
>>> - errmsg = malloc(length);
>>> + errmsg = g_malloc(length);
>>> glGetShaderInfoLog(shader, length, &length, errmsg);
>>> fprintf(stderr, "%s: compile %s error\n%s\n", __func__,
>>> (type == GL_VERTEX_SHADER) ? "vertex" : "fragment",
>>
>> Changes to the ui/shader.c code should be in a different
>> patch, since they're not related to the linux-user or
>> bsd-user code. (Splitting out bsd-user changes would
>> also be a good idea.) The idea here is that different
>> areas of the code have different maintainers, and so
>> review is by different people (and a problem in one part
>> of a patch doesn't then hold up an unrelated good change
>> in a different part).
>
> Ya, sure. I will split up the patches for different files and send
> them. I can cc the seperate maintainer also then.
>
>>
>> thanks
>> -- PMM
>
>
>
next prev parent reply other threads:[~2016-03-22 16:05 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-22 14:33 [Qemu-devel] [PATCH] Changed malloc() to g_malloc() at places where return value was not being checked Md Haris Iqbal
2016-03-22 14:57 ` Peter Maydell
2016-03-22 15:52 ` haris iqbal
2016-03-22 16:05 ` Paolo Bonzini [this message]
2016-03-22 16:15 ` haris iqbal
2016-03-22 16:46 ` Peter Maydell
2016-03-22 16:50 ` haris iqbal
2016-03-22 15:15 ` Markus Armbruster
2016-03-22 15:52 ` haris iqbal
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=56F16D42.1030108@redhat.com \
--to=pbonzini@redhat.com \
--cc=haris.phnx@gmail.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-trivial@nongnu.org \
/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;
as well as URLs for NNTP newsgroup(s).