Below are the commands that generated the changes along with the
rationale:

command: spatch --in-place scripts/coccinelle/error_propagate_null.cocci 
pve-backup.c
rationale: error_propagate() already checks for NULL in its second
           argument

command: spatch --in-place scripts/coccinelle/round.cocci vma-reader.c 
vma-writer.c
rationale: DIV_ROUND_UP() macro is more readable than the expanded
           calculation

Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
---

New in v2.

An additional suggestion would've been to use
-vmar->head_data = g_malloc(sizeof(VmaHeader));
+vmar->head_data = g_new(VmaHeader, 1);
in vma-reader.c, but head_data is an 'unsigned char *', so that
would require adding a cast too and doesn't actually seem cleaner.

 ...VE-Backup-add-vma-backup-format-code.patch | 20 +++++++++----------
 ...ckup-Proxmox-backup-patches-for-QEMU.patch | 12 +++++------
 ...igrate-dirty-bitmap-state-via-savevm.patch |  4 ++--
 .../0044-PVE-backup-add-fleecing-option.patch |  4 ++--
 ...ve-error-when-copy-before-write-fail.patch |  2 +-
 ...up-fixup-error-handling-for-fleecing.patch |  2 +-
 ...r-out-setting-up-snapshot-access-for.patch |  2 +-
 ...device-name-in-device-info-structure.patch |  6 +++---
 ...de-device-name-in-error-when-setting.patch |  2 +-
 9 files changed, 25 insertions(+), 29 deletions(-)

diff --git 
a/debian/patches/pve/0027-PVE-Backup-add-vma-backup-format-code.patch 
b/debian/patches/pve/0027-PVE-Backup-add-vma-backup-format-code.patch
index 186cbf7..aa60306 100644
--- a/debian/patches/pve/0027-PVE-Backup-add-vma-backup-format-code.patch
+++ b/debian/patches/pve/0027-PVE-Backup-add-vma-backup-format-code.patch
@@ -16,11 +16,11 @@ Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
 ---
  block/meson.build |   2 +
  meson.build       |   5 +
- vma-reader.c      | 868 ++++++++++++++++++++++++++++++++++++++++++
- vma-writer.c      | 817 ++++++++++++++++++++++++++++++++++++++++
+ vma-reader.c      | 867 ++++++++++++++++++++++++++++++++++++++++++
+ vma-writer.c      | 816 ++++++++++++++++++++++++++++++++++++++++
  vma.c             | 941 ++++++++++++++++++++++++++++++++++++++++++++++
  vma.h             | 150 ++++++++
- 6 files changed, 2783 insertions(+)
+ 6 files changed, 2781 insertions(+)
  create mode 100644 vma-reader.c
  create mode 100644 vma-writer.c
  create mode 100644 vma.c
@@ -64,10 +64,10 @@ index 147097c652..b9b673c271 100644
    foreach exe: [ 'qemu-img', 'qemu-io', 'qemu-nbd', 'qemu-storage-daemon']
 diff --git a/vma-reader.c b/vma-reader.c
 new file mode 100644
-index 0000000000..65015d2e1e
+index 0000000000..bb65ad313c
 --- /dev/null
 +++ b/vma-reader.c
-@@ -0,0 +1,868 @@
+@@ -0,0 +1,867 @@
 +/*
 + * VMA: Virtual Machine Archive
 + *
@@ -883,8 +883,7 @@ index 0000000000..65015d2e1e
 +
 +            int64_t cluster_num, end;
 +
-+            end = (vmar->devinfo[i].size + VMA_CLUSTER_SIZE - 1) /
-+                VMA_CLUSTER_SIZE;
++            end = DIV_ROUND_UP(vmar->devinfo[i].size, VMA_CLUSTER_SIZE);
 +
 +            for (cluster_num = 0; cluster_num < end; cluster_num++) {
 +                if (!vma_reader_get_bitmap(rstate, cluster_num)) {
@@ -938,10 +937,10 @@ index 0000000000..65015d2e1e
 +
 diff --git a/vma-writer.c b/vma-writer.c
 new file mode 100644
-index 0000000000..a466652a5d
+index 0000000000..3f489092df
 --- /dev/null
 +++ b/vma-writer.c
-@@ -0,0 +1,817 @@
+@@ -0,0 +1,816 @@
 +/*
 + * VMA: Virtual Machine Archive
 + *
@@ -1135,8 +1134,7 @@ index 0000000000..a466652a5d
 +    vmaw->stream_info[n].devname = g_strdup(devname);
 +    vmaw->stream_info[n].size = size;
 +
-+    vmaw->stream_info[n].cluster_count = (size + VMA_CLUSTER_SIZE - 1) /
-+        VMA_CLUSTER_SIZE;
++    vmaw->stream_info[n].cluster_count = DIV_ROUND_UP(size, VMA_CLUSTER_SIZE);
 +
 +    vmaw->stream_count = n;
 +
diff --git 
a/debian/patches/pve/0030-PVE-Backup-Proxmox-backup-patches-for-QEMU.patch 
b/debian/patches/pve/0030-PVE-Backup-Proxmox-backup-patches-for-QEMU.patch
index 0180f85..66372a5 100644
--- a/debian/patches/pve/0030-PVE-Backup-Proxmox-backup-patches-for-QEMU.patch
+++ b/debian/patches/pve/0030-PVE-Backup-Proxmox-backup-patches-for-QEMU.patch
@@ -94,11 +94,11 @@ Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
  monitor/hmp-cmds.c             |   72 +++
  proxmox-backup-client.c        |  146 +++++
  proxmox-backup-client.h        |   60 ++
- pve-backup.c                   | 1092 ++++++++++++++++++++++++++++++++
+ pve-backup.c                   | 1090 ++++++++++++++++++++++++++++++++
  qapi/block-core.json           |  233 +++++++
  qapi/common.json               |   14 +
  qapi/machine.json              |   16 +-
- 14 files changed, 1711 insertions(+), 14 deletions(-)
+ 14 files changed, 1709 insertions(+), 14 deletions(-)
  create mode 100644 proxmox-backup-client.c
  create mode 100644 proxmox-backup-client.h
  create mode 100644 pve-backup.c
@@ -586,10 +586,10 @@ index 0000000000..8cbf645b2c
 +#endif /* PROXMOX_BACKUP_CLIENT_H */
 diff --git a/pve-backup.c b/pve-backup.c
 new file mode 100644
-index 0000000000..9f83ecb310
+index 0000000000..fea0152de0
 --- /dev/null
 +++ b/pve-backup.c
-@@ -0,0 +1,1092 @@
+@@ -0,0 +1,1090 @@
 +#include "proxmox-backup-client.h"
 +#include "vma.h"
 +
@@ -1440,9 +1440,7 @@ index 0000000000..9f83ecb310
 +    } else if (format == BACKUP_FORMAT_VMA) {
 +        vmaw = vma_writer_create(backup_file, uuid, &local_err);
 +        if (!vmaw) {
-+            if (local_err) {
-+                error_propagate(errp, local_err);
-+            }
++            error_propagate(errp, local_err);
 +            goto err_mutex;
 +        }
 +
diff --git 
a/debian/patches/pve/0034-PVE-Migrate-dirty-bitmap-state-via-savevm.patch 
b/debian/patches/pve/0034-PVE-Migrate-dirty-bitmap-state-via-savevm.patch
index cbd90cc..b794959 100644
--- a/debian/patches/pve/0034-PVE-Migrate-dirty-bitmap-state-via-savevm.patch
+++ b/debian/patches/pve/0034-PVE-Migrate-dirty-bitmap-state-via-savevm.patch
@@ -180,10 +180,10 @@ index 0000000000..a97187e4d7
 +                         NULL);
 +}
 diff --git a/pve-backup.c b/pve-backup.c
-index 9f83ecb310..57477f7f2a 100644
+index fea0152de0..faa6a9b93c 100644
 --- a/pve-backup.c
 +++ b/pve-backup.c
-@@ -1085,6 +1085,7 @@ ProxmoxSupportStatus *qmp_query_proxmox_support(Error 
**errp)
+@@ -1083,6 +1083,7 @@ ProxmoxSupportStatus *qmp_query_proxmox_support(Error 
**errp)
      ret->pbs_library_version = g_strdup(proxmox_backup_qemu_version());
      ret->pbs_dirty_bitmap = true;
      ret->pbs_dirty_bitmap_savevm = true;
diff --git a/debian/patches/pve/0044-PVE-backup-add-fleecing-option.patch 
b/debian/patches/pve/0044-PVE-backup-add-fleecing-option.patch
index aa43103..8663a33 100644
--- a/debian/patches/pve/0044-PVE-backup-add-fleecing-option.patch
+++ b/debian/patches/pve/0044-PVE-backup-add-fleecing-option.patch
@@ -80,7 +80,7 @@ index 439a7a14c8..d0e7771dcc 100644
  
      hmp_handle_error(mon, error);
 diff --git a/pve-backup.c b/pve-backup.c
-index 57477f7f2a..0f098000dd 100644
+index faa6a9b93c..4b0820c8a7 100644
 --- a/pve-backup.c
 +++ b/pve-backup.c
 @@ -7,9 +7,11 @@
@@ -286,7 +286,7 @@ index 57477f7f2a..0f098000dd 100644
      bdrv_graph_co_rdunlock();
      if (local_err) {
          error_propagate(errp, local_err);
-@@ -1089,5 +1217,6 @@ ProxmoxSupportStatus *qmp_query_proxmox_support(Error 
**errp)
+@@ -1087,5 +1215,6 @@ ProxmoxSupportStatus *qmp_query_proxmox_support(Error 
**errp)
      ret->query_bitmap_info = true;
      ret->pbs_masterkey = true;
      ret->backup_max_workers = true;
diff --git 
a/debian/patches/pve/0045-PVE-backup-improve-error-when-copy-before-write-fail.patch
 
b/debian/patches/pve/0045-PVE-backup-improve-error-when-copy-before-write-fail.patch
index 8c51a39..dbbf64a 100644
--- 
a/debian/patches/pve/0045-PVE-backup-improve-error-when-copy-before-write-fail.patch
+++ 
b/debian/patches/pve/0045-PVE-backup-improve-error-when-copy-before-write-fail.patch
@@ -96,7 +96,7 @@ index 2a5d4ba693..969da3620f 100644
  
  #endif /* COPY_BEFORE_WRITE_H */
 diff --git a/pve-backup.c b/pve-backup.c
-index 0f098000dd..75da1dc051 100644
+index 4b0820c8a7..81697d9bf9 100644
 --- a/pve-backup.c
 +++ b/pve-backup.c
 @@ -374,6 +374,15 @@ static void pvebackup_complete_cb(void *opaque, int ret)
diff --git 
a/debian/patches/pve/0046-PVE-backup-fixup-error-handling-for-fleecing.patch 
b/debian/patches/pve/0046-PVE-backup-fixup-error-handling-for-fleecing.patch
index 9a8ac00..1b4fdd2 100644
--- a/debian/patches/pve/0046-PVE-backup-fixup-error-handling-for-fleecing.patch
+++ b/debian/patches/pve/0046-PVE-backup-fixup-error-handling-for-fleecing.patch
@@ -18,7 +18,7 @@ Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
  1 file changed, 25 insertions(+), 13 deletions(-)
 
 diff --git a/pve-backup.c b/pve-backup.c
-index 75da1dc051..167f0b5c3f 100644
+index 81697d9bf9..320c660589 100644
 --- a/pve-backup.c
 +++ b/pve-backup.c
 @@ -357,22 +357,23 @@ static void coroutine_fn 
pvebackup_co_complete_stream(void *opaque)
diff --git 
a/debian/patches/pve/0047-PVE-backup-factor-out-setting-up-snapshot-access-for.patch
 
b/debian/patches/pve/0047-PVE-backup-factor-out-setting-up-snapshot-access-for.patch
index 7cac5cb..ebd47dc 100644
--- 
a/debian/patches/pve/0047-PVE-backup-factor-out-setting-up-snapshot-access-for.patch
+++ 
b/debian/patches/pve/0047-PVE-backup-factor-out-setting-up-snapshot-access-for.patch
@@ -15,7 +15,7 @@ Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
  1 file changed, 58 insertions(+), 37 deletions(-)
 
 diff --git a/pve-backup.c b/pve-backup.c
-index 167f0b5c3f..f136d004c4 100644
+index 320c660589..d8d0c04b0f 100644
 --- a/pve-backup.c
 +++ b/pve-backup.c
 @@ -525,6 +525,62 @@ static int coroutine_fn pvebackup_co_add_config(
diff --git 
a/debian/patches/pve/0048-PVE-backup-save-device-name-in-device-info-structure.patch
 
b/debian/patches/pve/0048-PVE-backup-save-device-name-in-device-info-structure.patch
index a854b32..891e584 100644
--- 
a/debian/patches/pve/0048-PVE-backup-save-device-name-in-device-info-structure.patch
+++ 
b/debian/patches/pve/0048-PVE-backup-save-device-name-in-device-info-structure.patch
@@ -17,7 +17,7 @@ Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
  1 file changed, 15 insertions(+), 14 deletions(-)
 
 diff --git a/pve-backup.c b/pve-backup.c
-index f136d004c4..8ccb281c8c 100644
+index d8d0c04b0f..e2110ce0db 100644
 --- a/pve-backup.c
 +++ b/pve-backup.c
 @@ -94,6 +94,7 @@ typedef struct PVEBackupDevInfo {
@@ -111,7 +111,7 @@ index f136d004c4..8ccb281c8c 100644
              info->action = action;
              info->size = di->size;
              info->dirty = dirty;
-@@ -1034,10 +1035,7 @@ UuidInfo coroutine_fn *qmp_backup(
+@@ -1032,10 +1033,7 @@ UuidInfo coroutine_fn *qmp_backup(
                  goto err_mutex;
              }
  
@@ -123,7 +123,7 @@ index f136d004c4..8ccb281c8c 100644
              if (di->dev_id <= 0) {
                  error_set(errp, ERROR_CLASS_GENERIC_ERROR,
                            "register_stream failed");
-@@ -1148,6 +1146,9 @@ err:
+@@ -1146,6 +1144,9 @@ err:
              bdrv_co_unref(di->target);
          }
  
diff --git 
a/debian/patches/pve/0049-PVE-backup-include-device-name-in-error-when-setting.patch
 
b/debian/patches/pve/0049-PVE-backup-include-device-name-in-error-when-setting.patch
index bf79355..807609a 100644
--- 
a/debian/patches/pve/0049-PVE-backup-include-device-name-in-error-when-setting.patch
+++ 
b/debian/patches/pve/0049-PVE-backup-include-device-name-in-error-when-setting.patch
@@ -10,7 +10,7 @@ Signed-off-by: Fiona Ebner <f.eb...@proxmox.com>
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/pve-backup.c b/pve-backup.c
-index 8ccb281c8c..255465676c 100644
+index e2110ce0db..32352fb5ec 100644
 --- a/pve-backup.c
 +++ b/pve-backup.c
 @@ -626,7 +626,8 @@ static void create_backup_jobs_bh(void *opaque) {
-- 
2.39.5



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to