From: "Alex Bennée" <alex.bennee@linaro.org>
To: Mriyam Tamuli <mbtamuli@gmail.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 1/1] Converted malloc calls to g_malloc and g_new
Date: Sun, 13 Mar 2016 08:10:48 +0000 [thread overview]
Message-ID: <87fuvu6bnb.fsf@linaro.org> (raw)
In-Reply-To: <1457783505-21956-1-git-send-email-mbtamuli@gmail.com>
Mriyam Tamuli <mbtamuli@gmail.com> writes:
> Signed-off-by: Mriyam Tamuli <mbtamuli@gmail.com>
While this is a good change you still need to ensure any corresponding
free's are converted to g_free (and g_delete for g_new).
> ---
> block/iscsi.c | 2 +-
> bsd-user/elfload.c | 12 ++++++------
> bsd-user/qemu.h | 2 +-
> configure | 4 ++--
> disas/ia64.c | 2 +-
> 5 files changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/block/iscsi.c b/block/iscsi.c
> index 128ea79..2d6e5b4 100644
> --- a/block/iscsi.c
> +++ b/block/iscsi.c
> @@ -840,7 +840,7 @@ static BlockAIOCB *iscsi_aio_ioctl(BlockDriverState *bs,
> return &acb->common;
> }
>
> - acb->task = malloc(sizeof(struct scsi_task));
> + acb->task = g_malloc(sizeof(struct scsi_task));
> if (acb->task == NULL) {
g_malloc can't fail so the error leg can be removed.
> error_report("iSCSI: Failed to allocate task for scsi command. %s",
> iscsi_get_error(iscsi));
> diff --git a/bsd-user/elfload.c b/bsd-user/elfload.c
> index 0a6092b..74d7c79 100644
> --- a/bsd-user/elfload.c
> +++ b/bsd-user/elfload.c
> @@ -868,7 +868,7 @@ static abi_ulong load_elf_interp(struct elfhdr * interp_elf_ex,
> return ~(abi_ulong)0UL;
>
> elf_phdata = (struct elf_phdr *)
> - malloc(sizeof(struct elf_phdr) * interp_elf_ex->e_phnum);
> + g_malloc(sizeof(struct elf_phdr) * interp_elf_ex->e_phnum);
>
> if (!elf_phdata)
> return ~((abi_ulong)0UL);
Again error checking becomes redundant.
> @@ -1064,13 +1064,13 @@ static void load_symbols(struct elfhdr *hdr, int fd)
>
> found:
> /* Now know where the strtab and symtab are. Snarf them. */
> - s = malloc(sizeof(*s));
> - syms = malloc(symtab.sh_size);
> + s = g_malloc(sizeof(*s));
> + syms = g_malloc(symtab.sh_size);
> if (!syms) {
> free(s);
> return;
> }
And here.
> - s->disas_strtab = strings = malloc(strtab.sh_size);
> + s->disas_strtab = strings = g_malloc(strtab.sh_size);
> if (!s->disas_strtab) {
> free(s);
> free(syms);
And here
> @@ -1191,7 +1191,7 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs,
> }
>
> /* Now read in all of the header information */
> - elf_phdata = (struct elf_phdr *)malloc(elf_ex.e_phentsize*elf_ex.e_phnum);
> + elf_phdata = g_new(elf_ex.e_phentsize * elf_ex.e_phnum);
> if (elf_phdata == NULL) {
> return -ENOMEM;
> }
> @@ -1244,7 +1244,7 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs,
> * is an a.out format binary
> */
>
> - elf_interpreter = (char *)malloc(elf_ppnt->p_filesz);
> + elf_interpreter = g_new(elf_ppnt->p_filesz);
>
> if (elf_interpreter == NULL) {
And here.
> free (elf_phdata);
> diff --git a/bsd-user/qemu.h b/bsd-user/qemu.h
> index 03b502a..ada4360 100644
> --- a/bsd-user/qemu.h
> +++ b/bsd-user/qemu.h
> @@ -357,7 +357,7 @@ static inline void *lock_user(int type, abi_ulong guest_addr, long len, int copy
> #ifdef DEBUG_REMAP
> {
> void *addr;
> - addr = malloc(len);
> + addr = g_malloc(len);
> if (copy)
> memcpy(addr, g2h(guest_addr), len);
> else
> diff --git a/configure b/configure
> index 2b32876..5df672b 100755
> --- a/configure
> +++ b/configure
> @@ -3512,7 +3512,7 @@ fi
> if test "$tcmalloc" = "yes" ; then
> cat > $TMPC << EOF
> #include <stdlib.h>
> -int main(void) { malloc(1); return 0; }
> +int main(void) { g_malloc(1); return 0; }
I wouldn't touch the configure cases. There are used for probing the
library support and in this case I don't see how it woould work
considering only stdlib.h was included.
> EOF
>
> if compile_prog "" "-ltcmalloc" ; then
> @@ -3528,7 +3528,7 @@ fi
> if test "$jemalloc" = "yes" ; then
> cat > $TMPC << EOF
> #include <stdlib.h>
> -int main(void) { malloc(1); return 0; }
> +int main(void) { g_malloc(1); return 0; }
> EOF
>
> if compile_prog "" "-ljemalloc" ; then
> diff --git a/disas/ia64.c b/disas/ia64.c
> index 140754c..b0733ed 100644
> --- a/disas/ia64.c
> +++ b/disas/ia64.c
> @@ -10268,7 +10268,7 @@ static struct ia64_opcode *
> make_ia64_opcode (ia64_insn opcode, const char *name, int place, int depind)
> {
> struct ia64_opcode *res =
> - (struct ia64_opcode *) malloc (sizeof (struct ia64_opcode));
> + g_new(sizeof(struct ia64_opcode));
> res->name = strdup (name);
> res->type = main_table[place].opcode_type;
> res->num_outputs = main_table[place].num_outputs;
--
Alex Bennée
prev parent reply other threads:[~2016-03-13 8:10 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-12 11:51 [Qemu-devel] [PATCH 1/1] Converted malloc calls to g_malloc and g_new Mriyam Tamuli
2016-03-12 16:38 ` Mriyam Tamuli
2016-03-13 8:12 ` Alex Bennée
2016-03-12 17:20 ` Stefan Weil
2016-03-12 17:53 ` Mriyam Tamuli
2016-03-12 20:40 ` Stefan Weil
2016-03-13 8:17 ` Alex Bennée
2016-03-13 8:10 ` Alex Bennée [this message]
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=87fuvu6bnb.fsf@linaro.org \
--to=alex.bennee@linaro.org \
--cc=mbtamuli@gmail.com \
--cc=qemu-devel@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).