qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH v2 03/25] block/block-backend.c: assertions for block-bac


From: Eric Blake
Subject: Re: [RFC PATCH v2 03/25] block/block-backend.c: assertions for block-backend
Date: Tue, 5 Oct 2021 11:29:15 -0500
User-agent: NeoMutt/20210205-814-5cca94

On Tue, Oct 05, 2021 at 10:31:53AM -0400, Emanuele Giuseppe Esposito wrote:
> All the global state (GS) API functions will check that
> qemu_in_main_thread() returns true. If not, it means
> that the safety of BQL cannot be guaranteed, and
> they need to be moved to I/O.
> 
> Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
> ---
>  block/block-backend.c  | 89 +++++++++++++++++++++++++++++++++++++++++-
>  softmmu/qdev-monitor.c |  2 +
>  2 files changed, 90 insertions(+), 1 deletion(-)
> 
> diff --git a/block/block-backend.c b/block/block-backend.c
> index d31ae16b99..9cd3b27b53 100644
> --- a/block/block-backend.c
> +++ b/block/block-backend.c
> @@ -227,6 +227,7 @@ static void blk_root_activate(BdrvChild *child, Error 
> **errp)
>  
>  void blk_set_force_allow_inactivate(BlockBackend *blk)
>  {
> +    g_assert(qemu_in_main_thread());

Why g_assert()?

> @@ -661,6 +676,7 @@ bool monitor_add_blk(BlockBackend *blk, const char *name, 
> Error **errp)
>  {
>      assert(!blk->name);
>      assert(name && name[0]);
> +    g_assert(qemu_in_main_thread());

especially why mixed spellings?

Per osdep.h, we don't support builds with NDEBUG or G_DISABLE_ASSERT
defined to their non-default values, so behavior isn't really
different, but consistency says we use 'assert' more frequently than
'g_assert'.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org




reply via email to

[Prev in Thread] Current Thread [Next in Thread]