From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id D88FE67F36 for ; Tue, 10 Nov 2020 17:13:51 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id D5E292496F for ; Tue, 10 Nov 2020 17:13:51 +0100 (CET) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [212.186.127.180]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id C914C24967 for ; Tue, 10 Nov 2020 17:13:50 +0100 (CET) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 91A0A46064 for ; Tue, 10 Nov 2020 17:13:50 +0100 (CET) From: Stefan Reiter To: pve-devel@lists.proxmox.com Date: Tue, 10 Nov 2020 17:12:43 +0100 Message-Id: <20201110161243.9947-1-s.reiter@proxmox.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20201105111759.20569-3-s.reiter@proxmox.com> References: <20201105111759.20569-3-s.reiter@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL -0.036 Adjusted score from AWL reputation of From: address KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_DNSWL_MED -2.3 Sender listed at https://www.dnswl.org/, medium trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH v2 pve-qemu 2/3] update patches with squashed in 'include library version' X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Nov 2020 16:13:51 -0000 Signed-off-by: Stefan Reiter --- v2: Rebased for your convenience :) (was working on something else and this popped out as a side-effect) requires version bump for updated libproxmox-backup-qemu0 ...dd-query_proxmox_support-QMP-command.patch | 22 ++++++++++------ ...issing-crypt-and-compress-parameters.patch | 2 +- ...rite-callback-with-big-blocks-correc.patch | 2 +- ...-block-handling-to-PBS-dump-callback.patch | 2 +- ...E-add-query-pbs-bitmap-info-QMP-call.patch | 23 +++++++++-------- ...-transaction-to-synchronize-job-stat.patch | 2 +- ...ore-coroutines-and-don-t-block-on-fi.patch | 4 +-- ...n-up-error-handling-for-create_backu.patch | 2 +- ...igrate-dirty-bitmap-state-via-savevm.patch | 25 ++++++++++--------- 9 files changed, 47 insertions(+), 37 deletions(-) diff --git a/debian/patches/pve/0044-PVE-add-query_proxmox_support-QMP-command.patch b/debian/patches/pve/0044-PVE-add-query_proxmox_support-QMP-command.patch index 1549af3..aee85fa 100644 --- a/debian/patches/pve/0044-PVE-add-query_proxmox_support-QMP-command.patch +++ b/debian/patches/pve/0044-PVE-add-query_proxmox_support-QMP-command.patch @@ -8,16 +8,18 @@ backup support. Signed-off-by: Stefan Reiter Signed-off-by: Thomas Lamprecht +[PVE: query-proxmox-support: include library version] +Signed-off-by: Stefan Reiter --- - pve-backup.c | 7 +++++++ - qapi/block-core.json | 22 ++++++++++++++++++++++ - 2 files changed, 29 insertions(+) + pve-backup.c | 8 ++++++++ + qapi/block-core.json | 25 +++++++++++++++++++++++++ + 2 files changed, 33 insertions(+) diff --git a/pve-backup.c b/pve-backup.c -index bfb648d6b5..2539ae1520 100644 +index bfb648d6b5..6bf138cfc6 100644 --- a/pve-backup.c +++ b/pve-backup.c -@@ -1051,3 +1051,10 @@ BackupStatus *qmp_query_backup(Error **errp) +@@ -1051,3 +1051,11 @@ BackupStatus *qmp_query_backup(Error **errp) return info; } @@ -25,14 +27,15 @@ index bfb648d6b5..2539ae1520 100644 +ProxmoxSupportStatus *qmp_query_proxmox_support(Error **errp) +{ + ProxmoxSupportStatus *ret = g_malloc0(sizeof(*ret)); ++ ret->pbs_library_version = g_strdup(PROXMOX_BACKUP_QEMU_VERSION); + ret->pbs_dirty_bitmap = true; + return ret; +} diff --git a/qapi/block-core.json b/qapi/block-core.json -index f782c2cf96..6dd5e35473 100644 +index f782c2cf96..1ed5987c88 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json -@@ -877,6 +877,28 @@ +@@ -877,6 +877,31 @@ ## { 'command': 'backup-cancel' } @@ -44,9 +47,12 @@ index f782c2cf96..6dd5e35473 100644 +# @pbs-dirty-bitmap: True if dirty-bitmap-incremental backups to PBS are +# supported. +# ++# @pbs-library-version: Running version of libproxmox-backup-qemu0 library. ++# +## +{ 'struct': 'ProxmoxSupportStatus', -+ 'data': { 'pbs-dirty-bitmap': 'bool' } } ++ 'data': { 'pbs-dirty-bitmap': 'bool', ++ 'pbs-library-version': 'str' } } + +## +# @query-proxmox-support: diff --git a/debian/patches/pve/0045-pbs-fix-missing-crypt-and-compress-parameters.patch b/debian/patches/pve/0045-pbs-fix-missing-crypt-and-compress-parameters.patch index f0ff58a..34b0f51 100644 --- a/debian/patches/pve/0045-pbs-fix-missing-crypt-and-compress-parameters.patch +++ b/debian/patches/pve/0045-pbs-fix-missing-crypt-and-compress-parameters.patch @@ -9,7 +9,7 @@ Signed-off-by: Wolfgang Bumiller 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pve-backup.c b/pve-backup.c -index 2539ae1520..0e293a4f5e 100644 +index 6bf138cfc6..cd3a132d8b 100644 --- a/pve-backup.c +++ b/pve-backup.c @@ -958,6 +958,8 @@ UuidInfo *qmp_backup( diff --git a/debian/patches/pve/0046-PVE-handle-PBS-write-callback-with-big-blocks-correc.patch b/debian/patches/pve/0046-PVE-handle-PBS-write-callback-with-big-blocks-correc.patch index 5f73a01..d45a455 100644 --- a/debian/patches/pve/0046-PVE-handle-PBS-write-callback-with-big-blocks-correc.patch +++ b/debian/patches/pve/0046-PVE-handle-PBS-write-callback-with-big-blocks-correc.patch @@ -17,7 +17,7 @@ Signed-off-by: Stefan Reiter 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/pve-backup.c b/pve-backup.c -index 0e293a4f5e..8999692418 100644 +index cd3a132d8b..f14273645a 100644 --- a/pve-backup.c +++ b/pve-backup.c @@ -67,6 +67,7 @@ opts_init(pvebackup_init); diff --git a/debian/patches/pve/0047-PVE-add-zero-block-handling-to-PBS-dump-callback.patch b/debian/patches/pve/0047-PVE-add-zero-block-handling-to-PBS-dump-callback.patch index d09b817..930ec8f 100644 --- a/debian/patches/pve/0047-PVE-add-zero-block-handling-to-PBS-dump-callback.patch +++ b/debian/patches/pve/0047-PVE-add-zero-block-handling-to-PBS-dump-callback.patch @@ -20,7 +20,7 @@ Signed-off-by: Stefan Reiter 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pve-backup.c b/pve-backup.c -index 8999692418..562fcc20f7 100644 +index f14273645a..bd802c6205 100644 --- a/pve-backup.c +++ b/pve-backup.c @@ -8,6 +8,7 @@ diff --git a/debian/patches/pve/0048-PVE-add-query-pbs-bitmap-info-QMP-call.patch b/debian/patches/pve/0048-PVE-add-query-pbs-bitmap-info-QMP-call.patch index c8581c8..cba7ed9 100644 --- a/debian/patches/pve/0048-PVE-add-query-pbs-bitmap-info-QMP-call.patch +++ b/debian/patches/pve/0048-PVE-add-query-pbs-bitmap-info-QMP-call.patch @@ -10,8 +10,8 @@ Signed-off-by: Stefan Reiter --- monitor/hmp-cmds.c | 28 ++++++----- pve-backup.c | 117 ++++++++++++++++++++++++++++++++----------- - qapi/block-core.json | 57 ++++++++++++++++++++- - 3 files changed, 159 insertions(+), 43 deletions(-) + qapi/block-core.json | 56 +++++++++++++++++++++ + 3 files changed, 159 insertions(+), 42 deletions(-) diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c index 3ff014d32a..c3227a1498 100644 @@ -68,7 +68,7 @@ index 3ff014d32a..c3227a1498 100644 info->zero_bytes, zero_per); diff --git a/pve-backup.c b/pve-backup.c -index 562fcc20f7..04c21c80aa 100644 +index bd802c6205..2db4a62580 100644 --- a/pve-backup.c +++ b/pve-backup.c @@ -46,6 +46,7 @@ static struct PVEBackupState { @@ -314,7 +314,7 @@ index 562fcc20f7..04c21c80aa 100644 err: l = di_list; -@@ -1074,9 +1100,40 @@ BackupStatus *qmp_query_backup(Error **errp) +@@ -1074,10 +1100,41 @@ BackupStatus *qmp_query_backup(Error **errp) return info; } @@ -351,28 +351,31 @@ index 562fcc20f7..04c21c80aa 100644 ProxmoxSupportStatus *qmp_query_proxmox_support(Error **errp) { ProxmoxSupportStatus *ret = g_malloc0(sizeof(*ret)); + ret->pbs_library_version = g_strdup(PROXMOX_BACKUP_QEMU_VERSION); ret->pbs_dirty_bitmap = true; + ret->query_bitmap_info = true; return ret; } diff --git a/qapi/block-core.json b/qapi/block-core.json -index 6dd5e35473..5fc42e87f3 100644 +index 1ed5987c88..03fc0af99b 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json -@@ -885,9 +885,11 @@ +@@ -885,11 +885,14 @@ # @pbs-dirty-bitmap: True if dirty-bitmap-incremental backups to PBS are # supported. # +# @query-bitmap-info: True if the 'query-pbs-bitmap-info' QMP call is supported. +# + # @pbs-library-version: Running version of libproxmox-backup-qemu0 library. + # ## { 'struct': 'ProxmoxSupportStatus', -- 'data': { 'pbs-dirty-bitmap': 'bool' } } -+ 'data': { 'pbs-dirty-bitmap': 'bool', 'query-bitmap-info': 'bool' } } + 'data': { 'pbs-dirty-bitmap': 'bool', ++ 'query-bitmap-info': 'bool', + 'pbs-library-version': 'str' } } ## - # @query-proxmox-support: -@@ -899,6 +901,59 @@ +@@ -902,6 +905,59 @@ ## { 'command': 'query-proxmox-support', 'returns': 'ProxmoxSupportStatus' } diff --git a/debian/patches/pve/0051-PVE-Backup-Use-a-transaction-to-synchronize-job-stat.patch b/debian/patches/pve/0051-PVE-Backup-Use-a-transaction-to-synchronize-job-stat.patch index a9489a8..daa2498 100644 --- a/debian/patches/pve/0051-PVE-Backup-Use-a-transaction-to-synchronize-job-stat.patch +++ b/debian/patches/pve/0051-PVE-Backup-Use-a-transaction-to-synchronize-job-stat.patch @@ -16,7 +16,7 @@ Signed-off-by: Stefan Reiter 1 file changed, 49 insertions(+), 118 deletions(-) diff --git a/pve-backup.c b/pve-backup.c -index 04c21c80aa..9562e9c98d 100644 +index 2db4a62580..b52f4a9364 100644 --- a/pve-backup.c +++ b/pve-backup.c @@ -52,6 +52,7 @@ static struct PVEBackupState { diff --git a/debian/patches/pve/0052-PVE-Backup-Use-more-coroutines-and-don-t-block-on-fi.patch b/debian/patches/pve/0052-PVE-Backup-Use-more-coroutines-and-don-t-block-on-fi.patch index 695c0fd..49213d9 100644 --- a/debian/patches/pve/0052-PVE-Backup-Use-more-coroutines-and-don-t-block-on-fi.patch +++ b/debian/patches/pve/0052-PVE-Backup-Use-more-coroutines-and-don-t-block-on-fi.patch @@ -38,7 +38,7 @@ Signed-off-by: Stefan Reiter 2 files changed, 95 insertions(+), 58 deletions(-) diff --git a/pve-backup.c b/pve-backup.c -index 9562e9c98d..0466145bec 100644 +index b52f4a9364..4402c0cb17 100644 --- a/pve-backup.c +++ b/pve-backup.c @@ -33,7 +33,9 @@ const char *PBS_BITMAP_NAME = "pbs-incremental-dirty-bitmap"; @@ -359,7 +359,7 @@ index 9562e9c98d..0466145bec 100644 qemu_mutex_unlock(&backup_state.stat.lock); diff --git a/qapi/block-core.json b/qapi/block-core.json -index 5fc42e87f3..b31ad8d989 100644 +index 03fc0af99b..29650896e2 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -784,12 +784,15 @@ diff --git a/debian/patches/pve/0053-PVE-fix-and-clean-up-error-handling-for-create_backu.patch b/debian/patches/pve/0053-PVE-fix-and-clean-up-error-handling-for-create_backu.patch index 45dabc4..873fd37 100644 --- a/debian/patches/pve/0053-PVE-fix-and-clean-up-error-handling-for-create_backu.patch +++ b/debian/patches/pve/0053-PVE-fix-and-clean-up-error-handling-for-create_backu.patch @@ -22,7 +22,7 @@ Signed-off-by: Stefan Reiter 1 file changed, 54 insertions(+), 25 deletions(-) diff --git a/pve-backup.c b/pve-backup.c -index 0466145bec..1a2647e7a5 100644 +index 4402c0cb17..c7cde0fb0e 100644 --- a/pve-backup.c +++ b/pve-backup.c @@ -50,6 +50,7 @@ static struct PVEBackupState { diff --git a/debian/patches/pve/0055-PVE-Migrate-dirty-bitmap-state-via-savevm.patch b/debian/patches/pve/0055-PVE-Migrate-dirty-bitmap-state-via-savevm.patch index b1eca48..77c0c76 100644 --- a/debian/patches/pve/0055-PVE-Migrate-dirty-bitmap-state-via-savevm.patch +++ b/debian/patches/pve/0055-PVE-Migrate-dirty-bitmap-state-via-savevm.patch @@ -17,9 +17,9 @@ Signed-off-by: Stefan Reiter migration/Makefile.objs | 1 + migration/pbs-state.c | 97 ++++++++++++++++++++++++++++++++++++++++ pve-backup.c | 1 + - qapi/block-core.json | 9 +++- + qapi/block-core.json | 6 +++ softmmu/vl.c | 1 + - 6 files changed, 111 insertions(+), 1 deletion(-) + 6 files changed, 109 insertions(+) create mode 100644 migration/pbs-state.c diff --git a/include/migration/misc.h b/include/migration/misc.h @@ -150,21 +150,21 @@ index 0000000000..c711498c3e + &pbs_state); +} diff --git a/pve-backup.c b/pve-backup.c -index 1a2647e7a5..c12ff8bb61 100644 +index c7cde0fb0e..f65f1dda26 100644 --- a/pve-backup.c +++ b/pve-backup.c -@@ -1129,5 +1129,6 @@ ProxmoxSupportStatus *qmp_query_proxmox_support(Error **errp) - ProxmoxSupportStatus *ret = g_malloc0(sizeof(*ret)); +@@ -1130,5 +1130,6 @@ ProxmoxSupportStatus *qmp_query_proxmox_support(Error **errp) + ret->pbs_library_version = g_strdup(PROXMOX_BACKUP_QEMU_VERSION); ret->pbs_dirty_bitmap = true; ret->query_bitmap_info = true; + ret->pbs_dirty_bitmap_migration = true; return ret; } diff --git a/qapi/block-core.json b/qapi/block-core.json -index b31ad8d989..00c9e12fcc 100644 +index 29650896e2..0da4b35028 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json -@@ -890,9 +890,16 @@ +@@ -890,12 +890,18 @@ # # @query-bitmap-info: True if the 'query-pbs-bitmap-info' QMP call is supported. # @@ -173,15 +173,16 @@ index b31ad8d989..00c9e12fcc 100644 +# migration cap if this is false/unset may lead +# to crashes on migration! +# + # @pbs-library-version: Running version of libproxmox-backup-qemu0 library. + # ## { 'struct': 'ProxmoxSupportStatus', -- 'data': { 'pbs-dirty-bitmap': 'bool', 'query-bitmap-info': 'bool' } } -+ 'data': { 'pbs-dirty-bitmap': 'bool', -+ 'query-bitmap-info': 'bool', -+ 'pbs-dirty-bitmap-migration': 'bool' } } + 'data': { 'pbs-dirty-bitmap': 'bool', + 'query-bitmap-info': 'bool', ++ 'pbs-dirty-bitmap-migration': 'bool', + 'pbs-library-version': 'str' } } ## - # @query-proxmox-support: diff --git a/softmmu/vl.c b/softmmu/vl.c index 16aa2186b0..88b13871fd 100644 --- a/softmmu/vl.c -- 2.20.1