From: Paolo Bonzini <pbonzini@redhat.com>
To: Andrew Jones <drjones@redhat.com>, kvm@vger.kernel.org
Cc: alex.bennee@linaro.org, cov@codeaurora.org, thuth@redhat.com
Subject: Re: [kvm-unit-tests PATCH 19/18] don't embed code inside asserts
Date: Tue, 10 Nov 2015 17:37:48 +0100 [thread overview]
Message-ID: <56421D5C.30505@redhat.com> (raw)
In-Reply-To: <1447102628-20447-1-git-send-email-drjones@redhat.com>
On 09/11/2015 21:57, Andrew Jones wrote:
> assert() is classically a macro which could also be disabled, so if
> somebody introduces a switch to "#define assert(...) /*nothing*/" in
> the future, we'd lose code.
>
> Suggested-by: Thomas Huth <thuth@redhat.com>
> Signed-off-by: Andrew Jones <drjones@redhat.com>
> ---
> lib/arm/setup.c | 19 ++++++++++++++-----
> lib/arm/smp.c | 4 +++-
> lib/virtio-mmio.c | 4 +++-
> 3 files changed, 20 insertions(+), 7 deletions(-)
>
> diff --git a/lib/arm/setup.c b/lib/arm/setup.c
> index 02e81a689a8a6..da6edc1f9d8ff 100644
> --- a/lib/arm/setup.c
> +++ b/lib/arm/setup.c
> @@ -39,8 +39,11 @@ static void cpu_set(int fdtnode __unused, u32 regval, void *info __unused)
>
> static void cpu_init(void)
> {
> + int ret;
> +
> nr_cpus = 0;
> - assert(dt_for_each_cpu_node(cpu_set, NULL) == 0);
> + ret = dt_for_each_cpu_node(cpu_set, NULL);
> + assert(ret == 0);
> set_cpu_online(0, true);
> }
>
> @@ -49,8 +52,10 @@ static void mem_init(phys_addr_t freemem_start)
> /* we only expect one membank to be defined in the DT */
> struct dt_pbus_reg regs[1];
> phys_addr_t mem_start, mem_end;
> + int ret;
>
> - assert(dt_get_memory_params(regs, 1));
> + ret = dt_get_memory_params(regs, 1);
> + assert(ret != 0);
>
> mem_start = regs[0].addr;
> mem_end = mem_start + regs[0].size;
> @@ -71,14 +76,17 @@ void setup(const void *fdt)
> {
> const char *bootargs;
> u32 fdt_size;
> + int ret;
>
> /*
> * Move the fdt to just above the stack. The free memory
> * then starts just after the fdt.
> */
> fdt_size = fdt_totalsize(fdt);
> - assert(fdt_move(fdt, &stacktop, fdt_size) == 0);
> - assert(dt_init(&stacktop) == 0);
> + ret = fdt_move(fdt, &stacktop, fdt_size);
> + assert(ret == 0);
> + ret = dt_init(&stacktop);
> + assert(ret == 0);
>
> mem_init(PAGE_ALIGN((unsigned long)&stacktop + fdt_size));
> io_init();
> @@ -86,6 +94,7 @@ void setup(const void *fdt)
>
> thread_info_init(current_thread_info(), 0);
>
> - assert(dt_get_bootargs(&bootargs) == 0);
> + ret = dt_get_bootargs(&bootargs);
> + assert(ret == 0);
> setup_args(bootargs);
> }
> diff --git a/lib/arm/smp.c b/lib/arm/smp.c
> index 3cfc6d5ddedd0..390c53b5d84c3 100644
> --- a/lib/arm/smp.c
> +++ b/lib/arm/smp.c
> @@ -44,11 +44,13 @@ secondary_entry_fn secondary_cinit(void)
> void smp_boot_secondary(int cpu, secondary_entry_fn entry)
> {
> void *stack_base = memalign(THREAD_SIZE, THREAD_SIZE);
> + int ret;
>
> secondary_data.stack = stack_base + THREAD_START_SP;
> secondary_data.entry = entry;
> mmu_mark_disabled(cpu);
> - assert(cpu_psci_cpu_boot(cpu) == 0);
> + ret = cpu_psci_cpu_boot(cpu);
> + assert(ret == 0);
>
> while (!cpu_online(cpu))
> wfe();
> diff --git a/lib/virtio-mmio.c b/lib/virtio-mmio.c
> index 5ccbd193a264a..fa8dd5b8d484d 100644
> --- a/lib/virtio-mmio.c
> +++ b/lib/virtio-mmio.c
> @@ -123,10 +123,12 @@ static int vm_dt_match(const struct dt_device *dev, int fdtnode)
> struct vm_dt_info *info = (struct vm_dt_info *)dev->info;
> struct dt_pbus_reg base;
> u32 magic;
> + int ret;
>
> dt_device_bind_node((struct dt_device *)dev, fdtnode);
>
> - assert(dt_pbus_get_base(dev, &base) == 0);
> + ret = dt_pbus_get_base(dev, &base);
> + assert(ret == 0);
> info->base = ioremap(base.addr, base.size);
>
> magic = readl(info->base + VIRTIO_MMIO_MAGIC_VALUE);
>
Applied, thanks.
Paolo
next prev parent reply other threads:[~2015-11-10 16:37 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
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 [this message]
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=56421D5C.30505@redhat.com \
--to=pbonzini@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=cov@codeaurora.org \
--cc=drjones@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=thuth@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.