block: make assertion more generic
authorPaolo Bonzini <pbonzini@redhat.com>
Thu, 24 Nov 2022 15:29:06 +0000 (16:29 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 28 Jun 2024 12:44:51 +0000 (14:44 +0200)
.bdrv_needs_filename is only set for drivers that also set bdrv_file_open,
i.e. protocol drivers.

So we can make the assertion always, it will always pass for those drivers
that use bdrv_open.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
block.c

diff --git a/block.c b/block.c
index 468cf5e67d7341a83e006d13b78c9aa3b441a940..69a2905178a46b8fd9b26ecdafe0c53d894f8941 100644 (file)
--- a/block.c
+++ b/block.c
@@ -1655,8 +1655,8 @@ bdrv_open_driver(BlockDriverState *bs, BlockDriver *drv, const char *node_name,
     bs->drv = drv;
     bs->opaque = g_malloc0(drv->instance_size);
 
+    assert(!drv->bdrv_needs_filename || bs->filename[0]);
     if (drv->bdrv_file_open) {
-        assert(!drv->bdrv_needs_filename || bs->filename[0]);
         ret = drv->bdrv_file_open(bs, options, open_flags, &local_err);
     } else if (drv->bdrv_open) {
         ret = drv->bdrv_open(bs, options, open_flags, &local_err);