All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kurz <groug@kaod.org>
To: Eric Blake <eblake@redhat.com>
Cc: qemu-devel@nongnu.org,
	"Edgar E. Iglesias" <edgar.iglesias@xilinx.com>,
	qemu-ppc@nongnu.org, David Gibson <david@gibson.dropbear.id.au>,
	Markus Armbruster <armbru@redhat.com>
Subject: Re: [Qemu-devel] [PATCH for-4.0 0/9] ppc: get rid of g_malloc(sizeof(T) * n)
Date: Tue, 27 Nov 2018 14:23:37 +0100	[thread overview]
Message-ID: <20181127142337.4effe245@bahia.lan> (raw)
In-Reply-To: <4c274aa6-90e9-bf8f-c0d0-55c7553e472b@redhat.com>

On Tue, 27 Nov 2018 07:16:44 -0600
Eric Blake <eblake@redhat.com> wrote:

> On 11/27/18 7:04 AM, Greg Kurz wrote:
> > As explained in HACKING, the g_malloc(sizeof(T) * n) construct is unsafe
> > because it can't detect multiplication overflowing size_t and doesn't
> > allow type checking.
> > 
> > It appears to be used in a bunch of places though:
> > 
> > $ git grep -E 'malloc.*sizeof' | grep ' \* '  | wc -l
> > 101
> > 
> > This series fixes the ppc target and ppc machine code. The changes are
> > mostly trivial. Only the mac99 and e500 machines required some more work
> > that should be reviewed carefully, as it was only compile-tested.  
> 
> Did you do this all manually, or did you try to use Coccinelle?  Hmm - 
> we have a Coccinelle script for this mentioned in commit b45c03f (most 
> recently reused in bdd81add) - but it is not yet in scripts/coccinelle/. 
>   Maybe that would be worth doing now.
> 

I did that manually because I didn't know about Markus's Coccinelle
script... Also, I've only fixed the case involving a multiplication,
since HACKING says "g_malloc(sizeof(*v)) are acceptable".

I'll have a look at adding the script in scripts/coccinelle/.

Cheers,

--
Greg

  reply	other threads:[~2018-11-27 13:26 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-27 13:04 [Qemu-devel] [PATCH for-4.0 0/9] ppc: get rid of g_malloc(sizeof(T) * n) Greg Kurz
2018-11-27 13:05 ` [Qemu-devel] [PATCH for-4.0 1/9] target/ppc: use g_new(T, n) instead " Greg Kurz
2018-11-27 13:42   ` Philippe Mathieu-Daudé
2018-11-27 13:05 ` [Qemu-devel] [PATCH for-4.0 2/9] spapr: " Greg Kurz
2018-11-27 13:05 ` [Qemu-devel] [PATCH for-4.0 3/9] ppc405_boards: " Greg Kurz
2018-11-27 13:41   ` Philippe Mathieu-Daudé
2018-11-27 13:52     ` Greg Kurz
2018-11-27 14:03       ` Philippe Mathieu-Daudé
2018-11-27 13:05 ` [Qemu-devel] [PATCH for-4.0 4/9] ppc405_uc: " Greg Kurz
2018-11-27 13:42   ` Philippe Mathieu-Daudé
2018-11-27 13:05 ` [Qemu-devel] [PATCH for-4.0 5/9] ppc440_bamboo: " Greg Kurz
2018-11-27 13:43   ` Philippe Mathieu-Daudé
2018-11-27 14:01   ` Edgar E. Iglesias
2018-11-27 13:06 ` [Qemu-devel] [PATCH for-4.0 6/9] sam460ex: " Greg Kurz
2018-11-27 13:49   ` Philippe Mathieu-Daudé
2018-11-27 13:06 ` [Qemu-devel] [PATCH for-4.0 7/9] virtex_ml507: " Greg Kurz
2018-11-27 13:47   ` Philippe Mathieu-Daudé
2018-11-27 14:00   ` Edgar E. Iglesias
2018-11-27 13:06 ` [Qemu-devel] [PATCH for-4.0 8/9] mac_newworld: simplify IRQ wiring Greg Kurz
2018-11-27 13:06 ` [Qemu-devel] [PATCH for-4.0 9/9] e500: " Greg Kurz
2018-11-27 13:16 ` [Qemu-devel] [PATCH for-4.0 0/9] ppc: get rid of g_malloc(sizeof(T) * n) Eric Blake
2018-11-27 13:23   ` Greg Kurz [this message]
2018-11-27 22:54 ` David Gibson

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=20181127142337.4effe245@bahia.lan \
    --to=groug@kaod.org \
    --cc=armbru@redhat.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=eblake@redhat.com \
    --cc=edgar.iglesias@xilinx.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@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 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.