[PATCH] block: add missing coroutine_fn to bdrv_sum_allocated_file_size()

Stefan Hajnoczi posted 1 patch 1 year, 1 month ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20230308211435.346375-1-stefanha@redhat.com
Maintainers: Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>
There is a newer version of this series
block.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] block: add missing coroutine_fn to bdrv_sum_allocated_file_size()
Posted by Stefan Hajnoczi 1 year, 1 month ago
Not a coroutine_fn, you say?

  static int64_t bdrv_sum_allocated_file_size(BlockDriverState *bs)
  {
      BdrvChild *child;
      int64_t child_size, sum = 0;

      QLIST_FOREACH(child, &bs->children, next) {
          if (child->role & (BDRV_CHILD_DATA | BDRV_CHILD_METADATA |
                             BDRV_CHILD_FILTERED))
          {
              child_size = bdrv_co_get_allocated_file_size(child->bs);
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Well what do we have here?!

I rest my case, your honor.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
 block.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block.c b/block.c
index 0dd604d0f6..a79297f99b 100644
--- a/block.c
+++ b/block.c
@@ -5749,7 +5749,7 @@ exit:
  * sums the size of all data-bearing children.  (This excludes backing
  * children.)
  */
-static int64_t bdrv_sum_allocated_file_size(BlockDriverState *bs)
+static int64_t coroutine_fn bdrv_sum_allocated_file_size(BlockDriverState *bs)
 {
     BdrvChild *child;
     int64_t child_size, sum = 0;
-- 
2.39.2
Re: [PATCH] block: add missing coroutine_fn to bdrv_sum_allocated_file_size()
Posted by Philippe Mathieu-Daudé 1 year, 1 month ago
On 8/3/23 22:14, Stefan Hajnoczi wrote:
> Not a coroutine_fn, you say?
> 
>    static int64_t bdrv_sum_allocated_file_size(BlockDriverState *bs)
>    {
>        BdrvChild *child;
>        int64_t child_size, sum = 0;
> 
>        QLIST_FOREACH(child, &bs->children, next) {
>            if (child->role & (BDRV_CHILD_DATA | BDRV_CHILD_METADATA |
>                               BDRV_CHILD_FILTERED))
>            {
>                child_size = bdrv_co_get_allocated_file_size(child->bs);
>                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 
> Well what do we have here?!
> 
> I rest my case, your honor.
> 
> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> ---
>   block.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/block.c b/block.c
> index 0dd604d0f6..a79297f99b 100644
> --- a/block.c
> +++ b/block.c
> @@ -5749,7 +5749,7 @@ exit:
>    * sums the size of all data-bearing children.  (This excludes backing
>    * children.)
>    */
> -static int64_t bdrv_sum_allocated_file_size(BlockDriverState *bs)
> +static int64_t coroutine_fn bdrv_sum_allocated_file_size(BlockDriverState *bs)
>   {
>       BdrvChild *child;
>       int64_t child_size, sum = 0;

Since there is only 1 call site, maybe worth renaming as
bdrv_co_sum_allocated_file_size() in the same patch?