[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 06/15] block: avoid duplicating filename string in bdrv_create
From: |
Emanuele Giuseppe Esposito |
Subject: |
[PATCH v5 06/15] block: avoid duplicating filename string in bdrv_create |
Date: |
Wed, 23 Nov 2022 06:42:18 -0500 |
We know that the string will stay around until the function
returns, and the parameter of drv->bdrv_co_create_opts is const char*,
so it must not be modified either.
Suggested-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
---
block.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/block.c b/block.c
index 8c9f4ee37c..9d51e7b6e5 100644
--- a/block.c
+++ b/block.c
@@ -553,7 +553,7 @@ int bdrv_create(BlockDriver *drv, const char* filename,
Coroutine *co;
CreateCo cco = {
.drv = drv,
- .filename = g_strdup(filename),
+ .filename = filename,
.opts = opts,
.ret = NOT_DONE,
.err = NULL,
@@ -561,8 +561,7 @@ int bdrv_create(BlockDriver *drv, const char* filename,
if (!drv->bdrv_co_create_opts) {
error_setg(errp, "Driver '%s' does not support image creation",
drv->format_name);
- ret = -ENOTSUP;
- goto out;
+ return -ENOTSUP;
}
if (qemu_in_coroutine()) {
@@ -585,8 +584,6 @@ int bdrv_create(BlockDriver *drv, const char* filename,
}
}
-out:
- g_free(cco.filename);
return ret;
}
--
2.31.1
- Re: [PATCH v5 09/15] block: bdrv_create_file is a coroutine_fn, (continued)
- [PATCH v5 07/15] block: introduce QEMU_IN_COROUTINE macro, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 04/15] block-backend: replace bdrv_*_above with blk_*_above, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 08/15] block: distinguish between bdrv_create running in coroutine and not, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 02/15] block-copy: add missing coroutine_fn annotations, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 05/15] block/vmdk: add missing coroutine_fn annotations, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 06/15] block: avoid duplicating filename string in bdrv_create,
Emanuele Giuseppe Esposito <=
- [PATCH v5 10/15] block-coroutine-wrapper.py: introduce generated_co_wrapper_simple, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 12/15] block-coroutine-wrapper.py: default to main loop aiocontext if function does not have a BlockDriverState parameter, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 15/15] block/dirty-bitmap: convert coroutine-only functions to generated_co_wrapper_simple, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 11/15] block-coroutine-wrapper.py: default to main loop aiocontext if function does not have a BlockDriverState parameter, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 13/15] block-coroutine-wrapper.py: support also basic return types, Emanuele Giuseppe Esposito, 2022/11/23
- [PATCH v5 14/15] block: convert bdrv_create to generated_co_wrapper_simple, Emanuele Giuseppe Esposito, 2022/11/23