all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH v3 qemu 1/3] Add format attributes to function candidates
@ 2023-08-07 12:38 Filip Schauer
  2023-08-07 12:38 ` [pve-devel] [PATCH v3 qemu 2/3] Use already defined G_GNUC_PRINTF macro Filip Schauer
  2023-08-07 12:38 ` [pve-devel] [PATCH v3 qemu 3/3] Remove redundant function definition Filip Schauer
  0 siblings, 2 replies; 4+ messages in thread
From: Filip Schauer @ 2023-08-07 12:38 UTC (permalink / raw)
  To: pve-devel

Add format attributes to functions that take printf-like arguments. This
provides additional compile-time checking that the correct parameters
are passed to the functions.

This fixes compiler warnings generated by the -Wsuggest-attribute=format
flag.

Signed-off-by: Filip Schauer <f.schauer@proxmox.com>
---
 ...-async-for-background-state-snapshots.patch | 13 ++++++++++++-
 ...PVE-Backup-add-vma-backup-format-code.patch | 18 ++++++++++++++----
 2 files changed, 26 insertions(+), 5 deletions(-)

diff --git a/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch b/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
index 7be1af4..68c5627 100644
--- a/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
+++ b/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
@@ -142,7 +142,7 @@ new file mode 100644
 index 0000000000..ac1fac6378
 --- /dev/null
 +++ b/migration/savevm-async.c
-@@ -0,0 +1,533 @@
+@@ -0,0 +1,544 @@
 +#include "qemu/osdep.h"
 +#include "migration/channel-savevm-async.h"
 +#include "migration/migration.h"
@@ -177,6 +177,16 @@ index 0000000000..ac1fac6378
 +    do { } while (0)
 +#endif
 +
++#ifdef __GNUC__
++#if __GNUC__ >= 5 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
++#define PRINTF(i, j)    __attribute__((format (gnu_printf, i, j)))
++#else
++#define PRINTF(i, j)    __attribute__((format (printf, i, j)))
++#endif
++#else
++#define PRINTF(i, j)
++#endif
++
 +enum {
 +    SAVE_STATE_DONE,
 +    SAVE_STATE_ERROR,
@@ -275,6 +285,7 @@ index 0000000000..ac1fac6378
 +    return ret;
 +}
 +
++static void save_snapshot_error(const char *fmt, ...) PRINTF(1, 2);
 +static void save_snapshot_error(const char *fmt, ...)
 +{
 +    va_list ap;
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 8471a6f..5dcd866 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
@@ -2314,13 +2314,13 @@ index 0000000000..304f02bc84
 +        ret = blk_co_preadv(job->target, start * VMA_CLUSTER_SIZE,
 +                            readlen, &qiov, 0);
 +        if (ret < 0) {
-+            vma_writer_set_error(job->vmaw, "read error", -1);
++            vma_writer_set_error(job->vmaw, "read error");
 +            goto out;
 +        }
 +
 +        size_t zb = 0;
 +        if (vma_writer_write(job->vmaw, job->dev_id, start, buf, &zb) < 0) {
-+            vma_writer_set_error(job->vmaw, "backup_dump_cb vma_writer_write failed", -1);
++            vma_writer_set_error(job->vmaw, "backup_dump_cb vma_writer_write failed");
 +            goto out;
 +        }
 +    }
@@ -2622,7 +2622,7 @@ new file mode 100644
 index 0000000000..1b62859165
 --- /dev/null
 +++ b/vma.h
-@@ -0,0 +1,150 @@
+@@ -0,0 +1,160 @@
 +/*
 + * VMA: Virtual Machine Archive
 + *
@@ -2643,6 +2643,16 @@ index 0000000000..1b62859165
 +#include "qapi/error.h"
 +#include "block/block.h"
 +
++#ifdef __GNUC__
++#if __GNUC__ >= 5 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
++#define PRINTF(i, j)    __attribute__((format (gnu_printf, i, j)))
++#else
++#define PRINTF(i, j)    __attribute__((format (printf, i, j)))
++#endif
++#else
++#define PRINTF(i, j)
++#endif
++
 +#define VMA_BLOCK_BITS 12
 +#define VMA_BLOCK_SIZE (1<<VMA_BLOCK_BITS)
 +#define VMA_CLUSTER_BITS (VMA_BLOCK_BITS+4)
@@ -2757,7 +2767,7 @@ index 0000000000..1b62859165
 +int coroutine_fn vma_writer_flush_output(VmaWriter *vmaw);
 +
 +int vma_writer_get_status(VmaWriter *vmaw, VmaStatus *status);
-+void vma_writer_set_error(VmaWriter *vmaw, const char *fmt, ...);
++void vma_writer_set_error(VmaWriter *vmaw, const char *fmt, ...) PRINTF(2, 3);
 +
 +
 +VmaReader *vma_reader_create(const char *filename, Error **errp);
-- 
2.39.2





^ permalink raw reply	[flat|nested] 4+ messages in thread

* [pve-devel] [PATCH v3 qemu 2/3] Use already defined G_GNUC_PRINTF macro
  2023-08-07 12:38 [pve-devel] [PATCH v3 qemu 1/3] Add format attributes to function candidates Filip Schauer
@ 2023-08-07 12:38 ` Filip Schauer
  2023-08-07 12:38 ` [pve-devel] [PATCH v3 qemu 3/3] Remove redundant function definition Filip Schauer
  1 sibling, 0 replies; 4+ messages in thread
From: Filip Schauer @ 2023-08-07 12:38 UTC (permalink / raw)
  To: pve-devel

Use the G_GNUC_PRINTF macro that QEMU already defines instead of
redefining it under a different name.

Signed-off-by: Filip Schauer <f.schauer@proxmox.com>
---
 ...vevm-async-for-background-state-snapshots.patch | 14 ++------------
 ...027-PVE-Backup-add-vma-backup-format-code.patch | 14 ++------------
 2 files changed, 4 insertions(+), 24 deletions(-)

diff --git a/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch b/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
index 68c5627..3dbbf18 100644
--- a/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
+++ b/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
@@ -142,7 +142,7 @@ new file mode 100644
 index 0000000000..ac1fac6378
 --- /dev/null
 +++ b/migration/savevm-async.c
-@@ -0,0 +1,544 @@
+@@ -0,0 +1,534 @@
 +#include "qemu/osdep.h"
 +#include "migration/channel-savevm-async.h"
 +#include "migration/migration.h"
@@ -177,16 +177,6 @@ index 0000000000..ac1fac6378
 +    do { } while (0)
 +#endif
 +
-+#ifdef __GNUC__
-+#if __GNUC__ >= 5 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
-+#define PRINTF(i, j)    __attribute__((format (gnu_printf, i, j)))
-+#else
-+#define PRINTF(i, j)    __attribute__((format (printf, i, j)))
-+#endif
-+#else
-+#define PRINTF(i, j)
-+#endif
-+
 +enum {
 +    SAVE_STATE_DONE,
 +    SAVE_STATE_ERROR,
@@ -285,7 +275,7 @@ index 0000000000..ac1fac6378
 +    return ret;
 +}
 +
-+static void save_snapshot_error(const char *fmt, ...) PRINTF(1, 2);
++static void save_snapshot_error(const char *fmt, ...) G_GNUC_PRINTF(1, 2);
 +static void save_snapshot_error(const char *fmt, ...)
 +{
 +    va_list ap;
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 5dcd866..3c3ac54 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
@@ -2622,7 +2622,7 @@ new file mode 100644
 index 0000000000..1b62859165
 --- /dev/null
 +++ b/vma.h
-@@ -0,0 +1,160 @@
+@@ -0,0 +1,150 @@
 +/*
 + * VMA: Virtual Machine Archive
 + *
@@ -2643,16 +2643,6 @@ index 0000000000..1b62859165
 +#include "qapi/error.h"
 +#include "block/block.h"
 +
-+#ifdef __GNUC__
-+#if __GNUC__ >= 5 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
-+#define PRINTF(i, j)    __attribute__((format (gnu_printf, i, j)))
-+#else
-+#define PRINTF(i, j)    __attribute__((format (printf, i, j)))
-+#endif
-+#else
-+#define PRINTF(i, j)
-+#endif
-+
 +#define VMA_BLOCK_BITS 12
 +#define VMA_BLOCK_SIZE (1<<VMA_BLOCK_BITS)
 +#define VMA_CLUSTER_BITS (VMA_BLOCK_BITS+4)
@@ -2767,7 +2757,7 @@ index 0000000000..1b62859165
 +int coroutine_fn vma_writer_flush_output(VmaWriter *vmaw);
 +
 +int vma_writer_get_status(VmaWriter *vmaw, VmaStatus *status);
-+void vma_writer_set_error(VmaWriter *vmaw, const char *fmt, ...) PRINTF(2, 3);
++void vma_writer_set_error(VmaWriter *vmaw, const char *fmt, ...) G_GNUC_PRINTF(2, 3);
 +
 +
 +VmaReader *vma_reader_create(const char *filename, Error **errp);
-- 
2.39.2





^ permalink raw reply	[flat|nested] 4+ messages in thread

* [pve-devel] [PATCH v3 qemu 3/3] Remove redundant function definition
  2023-08-07 12:38 [pve-devel] [PATCH v3 qemu 1/3] Add format attributes to function candidates Filip Schauer
  2023-08-07 12:38 ` [pve-devel] [PATCH v3 qemu 2/3] Use already defined G_GNUC_PRINTF macro Filip Schauer
@ 2023-08-07 12:38 ` Filip Schauer
  2023-08-07 13:03   ` Fiona Ebner
  1 sibling, 1 reply; 4+ messages in thread
From: Filip Schauer @ 2023-08-07 12:38 UTC (permalink / raw)
  To: pve-devel

Remove the redundant save_snapshot_error function definition and move
the G_GNUC_PRINTF macro into function the declaration.

Signed-off-by: Filip Schauer <f.schauer@proxmox.com>
---
 ...PVE-add-savevm-async-for-background-state-snapshots.patch | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch b/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
index 3dbbf18..762ba9b 100644
--- a/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
+++ b/debian/patches/pve/0017-PVE-add-savevm-async-for-background-state-snapshots.patch
@@ -142,7 +142,7 @@ new file mode 100644
 index 0000000000..ac1fac6378
 --- /dev/null
 +++ b/migration/savevm-async.c
-@@ -0,0 +1,534 @@
+@@ -0,0 +1,533 @@
 +#include "qemu/osdep.h"
 +#include "migration/channel-savevm-async.h"
 +#include "migration/migration.h"
@@ -275,8 +275,7 @@ index 0000000000..ac1fac6378
 +    return ret;
 +}
 +
-+static void save_snapshot_error(const char *fmt, ...) G_GNUC_PRINTF(1, 2);
-+static void save_snapshot_error(const char *fmt, ...)
++static void G_GNUC_PRINTF(1, 2) save_snapshot_error(const char *fmt, ...)
 +{
 +    va_list ap;
 +    char *msg;
-- 
2.39.2





^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [pve-devel] [PATCH v3 qemu 3/3] Remove redundant function definition
  2023-08-07 12:38 ` [pve-devel] [PATCH v3 qemu 3/3] Remove redundant function definition Filip Schauer
@ 2023-08-07 13:03   ` Fiona Ebner
  0 siblings, 0 replies; 4+ messages in thread
From: Fiona Ebner @ 2023-08-07 13:03 UTC (permalink / raw)
  To: Proxmox VE development discussion, Filip Schauer

Am 07.08.23 um 14:38 schrieb Filip Schauer:
> Remove the redundant save_snapshot_error function definition and move
> the G_GNUC_PRINTF macro into function the declaration.
> 

The master branch in the public repository never saw your other changes,
so you can just start fresh and squash everything into a single patch
for v4 ;) That also makes the history much easier to read in the end,
because it will only contain the clean/concise version of your changes
and not all your local history that lead up to the final version.




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-08-07 13:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-07 12:38 [pve-devel] [PATCH v3 qemu 1/3] Add format attributes to function candidates Filip Schauer
2023-08-07 12:38 ` [pve-devel] [PATCH v3 qemu 2/3] Use already defined G_GNUC_PRINTF macro Filip Schauer
2023-08-07 12:38 ` [pve-devel] [PATCH v3 qemu 3/3] Remove redundant function definition Filip Schauer
2023-08-07 13:03   ` Fiona Ebner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal