diff mbox series

[v9,05/12] migration/dirtyrate: move RAMBLOCK_FOREACH_MIGRATABLE into ram.h

Message ID 1600137887-58739-6-git-send-email-zhengchuan@huawei.com
State New
Headers show
Series *** A Method for evaluating dirty page rate *** | expand

Commit Message

Zheng Chuan Sept. 15, 2020, 2:44 a.m. UTC
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>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: David Edmondson <david.edmondson@oracle.com>
---
 migration/dirtyrate.c |  1 +
 migration/ram.c       | 11 +----------
 migration/ram.h       | 10 ++++++++++
 3 files changed, 12 insertions(+), 10 deletions(-)

Comments

Li Qiang Sept. 15, 2020, 4:19 p.m. UTC | #1
Chuan Zheng <zhengchuan@huawei.com> 于2020年9月15日周二 上午10:34写道:
>

> 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>

> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> Reviewed-by: David Edmondson <david.edmondson@oracle.com>


Reviewed-by: Li Qiang <liq3ea@gmail.com>


> ---

>  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 ab372ba..7366bf3 100644

> --- a/migration/dirtyrate.c

> +++ b/migration/dirtyrate.c

> @@ -20,6 +20,7 @@

>  #include "qemu/rcu_queue.h"

>  #include "qapi/qapi-commands-migration.h"

>  #include "migration.h"

> +#include "ram.h"

>  #include "dirtyrate.h"

>

>  static int CalculatingState = DIRTY_RATE_STATUS_UNSTARTED;

> 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

>
diff mbox series

Patch

diff --git a/migration/dirtyrate.c b/migration/dirtyrate.c
index ab372ba..7366bf3 100644
--- a/migration/dirtyrate.c
+++ b/migration/dirtyrate.c
@@ -20,6 +20,7 @@ 
 #include "qemu/rcu_queue.h"
 #include "qapi/qapi-commands-migration.h"
 #include "migration.h"
+#include "ram.h"
 #include "dirtyrate.h"
 
 static int CalculatingState = DIRTY_RATE_STATUS_UNSTARTED;
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);