[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 04/10] migration/dirtyrate: move RAMBLOCK_FOREACH_MIGRATAB
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [PATCH v3 04/10] migration/dirtyrate: move RAMBLOCK_FOREACH_MIGRATABLE into ram.h |
Date: |
Thu, 20 Aug 2020 17:31:34 +0100 |
User-agent: |
Mutt/1.14.6 (2020-07-11) |
* Chuan Zheng (zhengchuan@huawei.com) wrote:
> RAMBLOCK_FOREACH_MIGRATABLE is need in dirtyrate measure,
> move the existing definition up into migration/ram.h
>
> Signed-off-by: Chuan Zheng <zhengchuan@huawei.com>
> Signed-off-by: YanYing Zhuang <ann.zhuangyanying@huawei.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
(I noticed this triggered a few checker warnings, but this is just
moving an existing odd #define)
> ---
> migration/dirtyrate.c | 1 +
> migration/ram.c | 11 +----------
> migration/ram.h | 10 ++++++++++
> 3 files changed, 12 insertions(+), 10 deletions(-)
>
> diff --git a/migration/dirtyrate.c b/migration/dirtyrate.c
> index 8708090..c4304ef 100644
> --- a/migration/dirtyrate.c
> +++ b/migration/dirtyrate.c
> @@ -21,6 +21,7 @@
> #include "qemu/rcu_queue.h"
> #include "qapi/qapi-commands-migration.h"
> #include "migration.h"
> +#include "ram.h"
> #include "dirtyrate.h"
>
> CalculatingDirtyRateState CalculatingState = CAL_DIRTY_RATE_INIT;
> diff --git a/migration/ram.c b/migration/ram.c
> index 76d4fee..37ef0da 100644
> --- a/migration/ram.c
> +++ b/migration/ram.c
> @@ -158,21 +158,12 @@ out:
> return ret;
> }
>
> -static bool ramblock_is_ignored(RAMBlock *block)
> +bool ramblock_is_ignored(RAMBlock *block)
> {
> return !qemu_ram_is_migratable(block) ||
> (migrate_ignore_shared() && qemu_ram_is_shared(block));
> }
>
> -/* Should be holding either ram_list.mutex, or the RCU lock. */
> -#define RAMBLOCK_FOREACH_NOT_IGNORED(block) \
> - INTERNAL_RAMBLOCK_FOREACH(block) \
> - if (ramblock_is_ignored(block)) {} else
> -
> -#define RAMBLOCK_FOREACH_MIGRATABLE(block) \
> - INTERNAL_RAMBLOCK_FOREACH(block) \
> - if (!qemu_ram_is_migratable(block)) {} else
> -
> #undef RAMBLOCK_FOREACH
>
> int foreach_not_ignored_block(RAMBlockIterFunc func, void *opaque)
> diff --git a/migration/ram.h b/migration/ram.h
> index 2eeaacf..011e854 100644
> --- a/migration/ram.h
> +++ b/migration/ram.h
> @@ -37,6 +37,16 @@ extern MigrationStats ram_counters;
> extern XBZRLECacheStats xbzrle_counters;
> extern CompressionStats compression_counters;
>
> +bool ramblock_is_ignored(RAMBlock *block);
> +/* Should be holding either ram_list.mutex, or the RCU lock. */
> +#define RAMBLOCK_FOREACH_NOT_IGNORED(block) \
> + INTERNAL_RAMBLOCK_FOREACH(block) \
> + if (ramblock_is_ignored(block)) {} else
> +
> +#define RAMBLOCK_FOREACH_MIGRATABLE(block) \
> + INTERNAL_RAMBLOCK_FOREACH(block) \
> + if (!qemu_ram_is_migratable(block)) {} else
> +
> int xbzrle_cache_resize(int64_t new_size, Error **errp);
> uint64_t ram_bytes_remaining(void);
> uint64_t ram_bytes_total(void);
> --
> 1.8.3.1
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
Re: [PATCH v3 00/10] *** A Method for evaluating dirty page rate ***, no-reply, 2020/08/16