]> git.proxmox.com Git - pve-qemu.git/blob - debian/patches/pve/0042-PVE-use-proxmox_backup_check_incremental.patch
bump version to 5.0.0-10
[pve-qemu.git] / debian / patches / pve / 0042-PVE-use-proxmox_backup_check_incremental.patch
1 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2 From: Stefan Reiter <s.reiter@proxmox.com>
3 Date: Mon, 6 Jul 2020 14:40:14 +0200
4 Subject: [PATCH] PVE: use proxmox_backup_check_incremental
5
6 Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
7 Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
8 ---
9 pve-backup.c | 11 ++++++++---
10 1 file changed, 8 insertions(+), 3 deletions(-)
11
12 diff --git a/pve-backup.c b/pve-backup.c
13 index bda1635b82..46191bb328 100644
14 --- a/pve-backup.c
15 +++ b/pve-backup.c
16 @@ -728,17 +728,22 @@ static void coroutine_fn pvebackup_co_prepare(void *opaque)
17 BdrvDirtyBitmap *bitmap = bdrv_find_dirty_bitmap(di->bs, PBS_BITMAP_NAME);
18
19 if (use_dirty_bitmap) {
20 + use_dirty_bitmap = proxmox_backup_check_incremental(pbs, devname, di->size) != 0;
21 +
22 if (bitmap == NULL) {
23 bitmap = bdrv_create_dirty_bitmap(di->bs, dump_cb_block_size, PBS_BITMAP_NAME, task->errp);
24 if (!bitmap) {
25 goto err;
26 }
27 - /* mark entire bitmap as dirty to make full backup first */
28 use_dirty_bitmap = false;
29 + }
30 +
31 + if (use_dirty_bitmap) {
32 + dirty += bdrv_get_dirty_count(bitmap);
33 + } else {
34 + /* mark entire bitmap as dirty to make full backup */
35 bdrv_set_dirty_bitmap(bitmap, 0, di->size);
36 dirty += di->size;
37 - } else {
38 - dirty += bdrv_get_dirty_count(bitmap);
39 }
40 di->bitmap = bitmap;
41 } else {