All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: Andrew Jones <drjones@redhat.com>,
	pbonzini@redhat.com, kvm@vger.kernel.org
Cc: alex.bennee@linaro.org, cov@codeaurora.org
Subject: Re: [kvm-unit-tests PATCH 02/18] trivial: lib: fail hard on failed mallocs
Date: Fri, 6 Nov 2015 15:05:41 +0100	[thread overview]
Message-ID: <563CB3B5.9090304@redhat.com> (raw)
In-Reply-To: <1446769483-21586-3-git-send-email-drjones@redhat.com>

On 06/11/15 01:24, Andrew Jones wrote:
> It's pretty safe to not even bother checking for NULL when
> using malloc and friends, but if we do check, then fail
> hard.
> 
> Signed-off-by: Andrew Jones <drjones@redhat.com>
> ---
>  lib/virtio-mmio.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/lib/virtio-mmio.c b/lib/virtio-mmio.c
> index 043832299174e..1b6f0cc378b79 100644
> --- a/lib/virtio-mmio.c
> +++ b/lib/virtio-mmio.c
...
> @@ -161,9 +160,7 @@ static struct virtio_device *virtio_mmio_dt_bind(u32 devid)
>  	if (node == -FDT_ERR_NOTFOUND)
>  		return NULL;
>  
> -	vm_dev = calloc(1, sizeof(*vm_dev));
> -	if (!vm_dev)
> -		return NULL;
> +	assert((vm_dev = calloc(1, sizeof(*vm_dev))) != NULL);

Could you maybe write that as two statements? assert() is classically a
macro which could also be disabled, so if somebody introduces a switch
to "#define assert(...) /*nothing*/" in the future, that calloc call
would be completely gone!

 Thomas


  reply	other threads:[~2015-11-06 14:05 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-06  0:24 [kvm-unit-tests PATCH 00/18] bunch of mostly trivial patches Andrew Jones
2015-11-06  0:24 ` [kvm-unit-tests PATCH 01/18] makefiles: use bash Andrew Jones
2015-11-10 16:22   ` Paolo Bonzini
2015-11-10 16:37     ` Andrew Jones
2015-11-10 16:48       ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 02/18] trivial: lib: fail hard on failed mallocs Andrew Jones
2015-11-06 14:05   ` Thomas Huth [this message]
2015-11-07  1:02     ` Andrew Jones
2015-11-09 20:53   ` [kvm-unit-tests PATCH v2 02/19] " Andrew Jones
2015-11-09 20:55     ` Thomas Huth
2015-11-10 16:23     ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 03/18] trivial: alloc: don't use 'top' outside spinlock Andrew Jones
2015-11-10 16:24   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 04/18] trivial: lib: missing extern in string.h Andrew Jones
2015-11-10 16:24   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 05/18] README: add pointer to new wiki page Andrew Jones
2015-11-10 16:25   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 06/18] README: add some CONTRIBUTING notes Andrew Jones
2015-11-10 16:25   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 07/18] configure: emit HOST=$host to config.mak Andrew Jones
2015-11-10 16:26   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 08/18] run_tests: pass test name to run script Andrew Jones
2015-11-10 16:34   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 09/18] arm/run: use ACCEL to choose between kvm and tcg Andrew Jones
2015-11-10 16:30   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 10/18] run_tests: probe for max-smp Andrew Jones
2015-11-10 16:31   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 11/18] lib/printf: support the %u unsigned fmt field Andrew Jones
2015-11-10 16:33   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 12/18] lib/arm: add flush_tlb_page mmu function Andrew Jones
2015-11-10 16:33   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 13/18] arm: Fail on unknown subtest Andrew Jones
2015-11-10 16:34   ` Paolo Bonzini
2015-11-06  0:24 ` [kvm-unit-tests PATCH 14/18] arm/arm64: allow building a single test Andrew Jones
2015-11-06  0:24 ` [kvm-unit-tests PATCH 15/18] arm/arm64: generate map files Andrew Jones
2015-11-06  0:24 ` [kvm-unit-tests PATCH 16/18] lib: link in linux kernel headers (uapi) Andrew Jones
2015-11-06  0:24 ` [kvm-unit-tests PATCH 17/18] Revert "arm/arm64: import include/uapi/linux/psci.h" Andrew Jones
2015-11-06  0:24 ` [kvm-unit-tests PATCH 18/18] arm/arm64: uart0_init: check /chosen/stdout-path Andrew Jones
2015-11-10 16:37   ` Paolo Bonzini
2015-11-09 20:57 ` [kvm-unit-tests PATCH 19/18] don't embed code inside asserts Andrew Jones
2015-11-10 16:37   ` Paolo Bonzini
2015-11-10 16:38 ` [kvm-unit-tests PATCH 00/18] bunch of mostly trivial patches Paolo Bonzini
2015-11-10 16:54   ` Andrew Jones
2015-11-20 18:01     ` Andrew Jones

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=563CB3B5.9090304@redhat.com \
    --to=thuth@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=cov@codeaurora.org \
    --cc=drjones@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=pbonzini@redhat.com \
    /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.