All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: "Volker Rümelin" <vr_qemu@t-online.de>
Cc: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Gerd Hoffmann" <kraxel@redhat.com>,
	"Christian Schoenebeck" <qemu_oss@crudebyte.com>,
	"Thomas Huth" <thuth@redhat.com>,
	"Marc-André Lureau" <marcandre.lureau@gmail.com>,
	qemu-devel@nongnu.org
Subject: Re: [PATCH 07/11] audio/audio_template: use g_malloc0() to replace audio_calloc()
Date: Mon, 16 Jan 2023 08:58:45 +0000	[thread overview]
Message-ID: <Y8URq6bKB5tlDsHR@redhat.com> (raw)
In-Reply-To: <e4276dbf-ba7c-0ee4-88f8-4b0cffee46f7@t-online.de>

On Sun, Dec 18, 2022 at 06:39:00PM +0100, Volker Rümelin wrote:
> Am 18.12.22 um 18:26 schrieb Philippe Mathieu-Daudé:
> > On 18/12/22 18:15, Volker Rümelin wrote:
> > > Use g_malloc0() as a direct replacement for audio_calloc().
> > > 
> > > Signed-off-by: Volker Rümelin <vr_qemu@t-online.de>
> > > ---
> > >   audio/audio_template.h | 2 +-
> > >   1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/audio/audio_template.h b/audio/audio_template.h
> > > index d343a1dcb3..5f51ef26b2 100644
> > > --- a/audio/audio_template.h
> > > +++ b/audio/audio_template.h
> > > @@ -273,7 +273,7 @@ static HW *glue(audio_pcm_hw_add_new_,
> > > TYPE)(AudioState *s,
> > >           return NULL;
> > >       }
> > >   -    hw = audio_calloc(__func__, 1, glue(drv->voice_size_, TYPE));
> > > +    hw = g_malloc0(glue(drv->voice_size_, TYPE));
> > >       if (!hw) {
> > 
> > g_malloc0() can't fail. Either you want g_try_malloc0() or
> > remove the error path.
> > 
> 
> g_malloc0() returns NULL if drv->voice_size_(out|in) is 0. I think the code
> is correct.

IMHO relying on that is rather misleading to people reviewing the code
though. As seen by Philippe's reply, people generally don't expect that
g_malloc0 can return NULL, and it is not at all obvious that we are
intentionally expecting 0 to be passed as a size.

Please make this explicit by removing and if (!hw) check after
g_malloc, and adding a check before g_malloc

   if (audio_bug(__func__, glue(drv->voice_size_, TYPE) == 0)) {
       dolog (...)


With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



  parent reply	other threads:[~2023-01-16  8:59 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-18 17:13 [PATCH 00/11] audio: more improvements Volker Rümelin
2022-12-18 17:15 ` [PATCH 01/11] audio: log unimplemented audio device sample rates Volker Rümelin
2022-12-18 20:26   ` Christian Schoenebeck
2022-12-19  7:22     ` Volker Rümelin
2022-12-19 13:38       ` Christian Schoenebeck
2022-12-18 17:15 ` [PATCH 02/11] audio: don't show unnecessary error messages Volker Rümelin
2022-12-18 17:20   ` Philippe Mathieu-Daudé
2022-12-18 17:15 ` [PATCH 03/11] audio: rename hardware store to backend Volker Rümelin
2022-12-29  9:39   ` Thomas Huth
2022-12-18 17:15 ` [PATCH 04/11] audio: remove unused #define AUDIO_STRINGIFY Volker Rümelin
2022-12-18 17:31   ` Philippe Mathieu-Daudé
2022-12-29  9:39   ` Thomas Huth
2022-12-18 17:15 ` [PATCH 05/11] audio/mixeng: use g_new0() instead of audio_calloc() Volker Rümelin
2022-12-18 20:56   ` Richard Henderson
2022-12-18 17:15 ` [PATCH 06/11] audio/alsaaudio: " Volker Rümelin
2022-12-18 17:24   ` Philippe Mathieu-Daudé
2022-12-18 20:57   ` Richard Henderson
2022-12-18 17:15 ` [PATCH 07/11] audio/audio_template: use g_malloc0() to replace audio_calloc() Volker Rümelin
2022-12-18 17:26   ` Philippe Mathieu-Daudé
2022-12-18 17:39     ` Volker Rümelin
2022-12-18 20:05       ` Christian Schoenebeck
2022-12-18 20:34         ` Philippe Mathieu-Daudé
2023-01-16  8:58       ` Daniel P. Berrangé [this message]
2023-01-17  7:05         ` Volker Rümelin
2022-12-18 17:15 ` [PATCH 08/11] audio/audio_template: use g_new0() " Volker Rümelin
2022-12-18 21:02   ` Richard Henderson
2023-01-16  9:03   ` Daniel P. Berrangé
2023-01-17  7:02     ` Volker Rümelin
2022-12-18 17:15 ` [PATCH 09/11] audio: remove audio_calloc() function Volker Rümelin
2022-12-18 17:29   ` Philippe Mathieu-Daudé
2022-12-18 17:15 ` [PATCH 10/11] alsaaudio: change default playback settings Volker Rümelin
2022-12-21 11:03   ` Christian Schoenebeck
2022-12-26 15:08     ` Volker Rümelin
2022-12-26 15:37       ` Volker Rümelin
2022-12-28 13:52       ` Christian Schoenebeck
2022-12-29  9:08         ` Volker Rümelin
2022-12-30  9:01         ` Volker Rümelin
2022-12-30 14:05           ` Christian Schoenebeck
2022-12-18 17:15 ` [PATCH 11/11] alsaaudio: reintroduce default recording settings Volker Rümelin

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=Y8URq6bKB5tlDsHR@redhat.com \
    --to=berrange@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=marcandre.lureau@gmail.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu_oss@crudebyte.com \
    --cc=thuth@redhat.com \
    --cc=vr_qemu@t-online.de \
    /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.