On Wed, Jul 18, 2018 at 06:41:48PM +0300, Denis Plotnikov wrote:
> Signed-off-by: Denis Plotnikov <dplotnikov@virtuozzo.com>
> ---
> include/exec/ram_addr.h | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h
> index 6cbc02aa0f..5b403d537d 100644
> --- a/include/exec/ram_addr.h
> +++ b/include/exec/ram_addr.h
> @@ -36,6 +36,8 @@ struct RAMBlock {
> char idstr[256];
> /* RCU-enabled, writes protected by the ramlist lock */
> QLIST_ENTRY(RAMBlock) next;
> + /* blocks used for background snapshot */
> + QLIST_ENTRY(RAMBlock) bgs_next;
> QLIST_HEAD(, RAMBlockNotifier) ramblock_notifiers;
> int fd;
> size_t page_size;
> @@ -49,6 +51,11 @@ struct RAMBlock {
> unsigned long *unsentmap;
> /* bitmap of already received pages in postcopy */
> unsigned long *receivedmap;
> + /* The following 2 are for background snapshot */
> + /* Pages currently being copied */
> + unsigned long *touched_map;
> + /* Pages has been copied already */
> + unsigned long *copied_map;
> };
>
> static inline bool offset_in_ramblock(RAMBlock *b, ram_addr_t offset)
> --
> 2.17.0
>
>
IMHO these new fields can be put into the patches where they are
firstly used. Isolating them do not really help much for anything
AFAICT...
Regards,
--
Peter Xu