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
next prev parent 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 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).