qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH-for-4.1 v4 7/7] virtio-balloon: No need to track


From: David Gibson
Subject: Re: [Qemu-devel] [PATCH-for-4.1 v4 7/7] virtio-balloon: No need to track subpages for the PBP anymore
Date: Fri, 26 Jul 2019 18:10:01 +1000
User-agent: Mutt/1.12.0 (2019-05-25)

On Thu, Jul 25, 2019 at 01:36:38PM +0200, David Hildenbrand wrote:
> As ramblocks cannot get removed/readded while we are processing a bulk
> of inflation requests, there is no more need to track the page size
> in form of the number of subpages.
> 
> Suggested-by: David Gibson <address@hidden>
> Signed-off-by: David Hildenbrand <address@hidden>

Reviewed-by: David Gibson <address@hidden>

> ---
>  hw/virtio/virtio-balloon.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/hw/virtio/virtio-balloon.c b/hw/virtio/virtio-balloon.c
> index a6282d58d4..fe9664e42c 100644
> --- a/hw/virtio/virtio-balloon.c
> +++ b/hw/virtio/virtio-balloon.c
> @@ -36,7 +36,6 @@
>  
>  typedef struct PartiallyBalloonedPage {
>      ram_addr_t base_gpa;
> -    long subpages;
>      unsigned long *bitmap;
>  } PartiallyBalloonedPage;
>  
> @@ -55,16 +54,15 @@ static PartiallyBalloonedPage 
> *virtio_balloon_pbp_alloc(ram_addr_t base_gpa,
>      PartiallyBalloonedPage *pbp = g_new0(PartiallyBalloonedPage, 1);
>  
>      pbp->base_gpa = base_gpa;
> -    pbp->subpages = subpages;
>      pbp->bitmap = bitmap_new(subpages);
>  
>      return pbp;
>  }
>  
>  static bool virtio_balloon_pbp_matches(PartiallyBalloonedPage *pbp,
> -                                       ram_addr_t base_gpa, long subpages)
> +                                       ram_addr_t base_gpa)
>  {
> -    return pbp->subpages == subpages && pbp->base_gpa == base_gpa;
> +    return pbp->base_gpa == base_gpa;
>  }
>  
>  static void balloon_inflate_page(VirtIOBalloon *balloon,
> @@ -106,7 +104,7 @@ static void balloon_inflate_page(VirtIOBalloon *balloon,
>      base_gpa = memory_region_get_ram_addr(mr) + mr_offset -
>                 (rb_offset - rb_aligned_offset);
>  
> -    if (*pbp && !virtio_balloon_pbp_matches(*pbp, base_gpa, subpages)) {
> +    if (*pbp && !virtio_balloon_pbp_matches(*pbp, base_gpa)) {
>          /* We've partially ballooned part of a host page, but now
>           * we're trying to balloon part of a different one.  Too hard,
>           * give up on the old partial page */

-- 
David Gibson                    | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
                                | _way_ _around_!
http://www.ozlabs.org/~dgibson

Attachment: signature.asc
Description: PGP signature


reply via email to

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