From: Stefan Weil <sw@weilnetz.de>
To: Anthony Liguori <aliguori@amazon.com>
Cc: qemu-trivial@nongnu.org, Stefan Weil <sw@weilnetz.de>,
qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-trivial] [PATCH for 1.7 v2] qga: Fix compiler warnings (missing format attribute, wrong format strings)
Date: Mon, 18 Nov 2013 22:32:00 +0100 [thread overview]
Message-ID: <528A8750.7000303@weilnetz.de> (raw)
In-Reply-To: <1384712392-10458-1-git-send-email-sw@weilnetz.de>
Please note that this patch fixes real bugs, namely wrong format strings.
As far as I could see those bugs are only in code branches which handle
rare error conditions, so maybe they only have a low priority.
Nevertheless they can be fixed in QEMU 1.7.
Do we need a pull request, or can it be applied directly?
Stefan
Am 17.11.2013 19:19, schrieb Stefan Weil:
> gcc 4.8.2 reports this warning when extra warnings are enabled (-Wextra):
>
> CC qga/commands.o
> qga/commands.c: In function ‘slog’:
> qga/commands.c:28:5: error:
> function might be possible candidate for ‘gnu_printf’ format attribute [-Werror=suggest-attribute=format]
> g_logv("syslog", G_LOG_LEVEL_INFO, fmt, ap);
> ^
>
> gcc 4.8.2 reports this warning when slog is declared with the
> gnu_printf format attribute:
>
> qga/commands-posix.c: In function ‘qmp_guest_file_open’:
> qga/commands-posix.c:404:5: warning:
> format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘int64_t’ [-Wformat=]
> slog("guest-file-open, handle: %d", handle);
> ^
>
> On 32 bit hosts there are three more warnings which are also fixed here.
>
> Signed-off-by: Stefan Weil <sw@weilnetz.de>
> ---
>
> v2: Fix three more wrong format strings for 32 bit hosts.
>
> qga/commands-posix.c | 8 ++++----
> qga/guest-agent-core.h | 2 +-
> 2 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/qga/commands-posix.c b/qga/commands-posix.c
> index 10682f5..8100bee 100644
> --- a/qga/commands-posix.c
> +++ b/qga/commands-posix.c
> @@ -401,7 +401,7 @@ int64_t qmp_guest_file_open(const char *path, bool has_mode, const char *mode, E
> return -1;
> }
>
> - slog("guest-file-open, handle: %d", handle);
> + slog("guest-file-open, handle: %" PRId64, handle);
> return handle;
> }
>
> @@ -410,7 +410,7 @@ void qmp_guest_file_close(int64_t handle, Error **err)
> GuestFileHandle *gfh = guest_file_handle_find(handle, err);
> int ret;
>
> - slog("guest-file-close called, handle: %ld", handle);
> + slog("guest-file-close called, handle: %" PRId64, handle);
> if (!gfh) {
> return;
> }
> @@ -451,7 +451,7 @@ struct GuestFileRead *qmp_guest_file_read(int64_t handle, bool has_count,
> read_count = fread(buf, 1, count, fh);
> if (ferror(fh)) {
> error_setg_errno(err, errno, "failed to read file");
> - slog("guest-file-read failed, handle: %ld", handle);
> + slog("guest-file-read failed, handle: %" PRId64, handle);
> } else {
> buf[read_count] = 0;
> read_data = g_malloc0(sizeof(GuestFileRead));
> @@ -496,7 +496,7 @@ GuestFileWrite *qmp_guest_file_write(int64_t handle, const char *buf_b64,
> write_count = fwrite(buf, 1, count, fh);
> if (ferror(fh)) {
> error_setg_errno(err, errno, "failed to write to file");
> - slog("guest-file-write failed, handle: %ld", handle);
> + slog("guest-file-write failed, handle: %" PRId64, handle);
> } else {
> write_data = g_malloc0(sizeof(GuestFileWrite));
> write_data->count = write_count;
> diff --git a/qga/guest-agent-core.h b/qga/guest-agent-core.h
> index 624a559..e422208 100644
> --- a/qga/guest-agent-core.h
> +++ b/qga/guest-agent-core.h
> @@ -29,7 +29,7 @@ GACommandState *ga_command_state_new(void);
> bool ga_logging_enabled(GAState *s);
> void ga_disable_logging(GAState *s);
> void ga_enable_logging(GAState *s);
> -void slog(const gchar *fmt, ...);
> +void GCC_FMT_ATTR(1, 2) slog(const gchar *fmt, ...);
> void ga_set_response_delimited(GAState *s);
> bool ga_is_frozen(GAState *s);
> void ga_set_frozen(GAState *s);
WARNING: multiple messages have this Message-ID (diff)
From: Stefan Weil <sw@weilnetz.de>
To: Anthony Liguori <aliguori@amazon.com>
Cc: qemu-trivial@nongnu.org, Stefan Weil <sw@weilnetz.de>,
qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH for 1.7 v2] qga: Fix compiler warnings (missing format attribute, wrong format strings)
Date: Mon, 18 Nov 2013 22:32:00 +0100 [thread overview]
Message-ID: <528A8750.7000303@weilnetz.de> (raw)
In-Reply-To: <1384712392-10458-1-git-send-email-sw@weilnetz.de>
Please note that this patch fixes real bugs, namely wrong format strings.
As far as I could see those bugs are only in code branches which handle
rare error conditions, so maybe they only have a low priority.
Nevertheless they can be fixed in QEMU 1.7.
Do we need a pull request, or can it be applied directly?
Stefan
Am 17.11.2013 19:19, schrieb Stefan Weil:
> gcc 4.8.2 reports this warning when extra warnings are enabled (-Wextra):
>
> CC qga/commands.o
> qga/commands.c: In function ‘slog’:
> qga/commands.c:28:5: error:
> function might be possible candidate for ‘gnu_printf’ format attribute [-Werror=suggest-attribute=format]
> g_logv("syslog", G_LOG_LEVEL_INFO, fmt, ap);
> ^
>
> gcc 4.8.2 reports this warning when slog is declared with the
> gnu_printf format attribute:
>
> qga/commands-posix.c: In function ‘qmp_guest_file_open’:
> qga/commands-posix.c:404:5: warning:
> format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘int64_t’ [-Wformat=]
> slog("guest-file-open, handle: %d", handle);
> ^
>
> On 32 bit hosts there are three more warnings which are also fixed here.
>
> Signed-off-by: Stefan Weil <sw@weilnetz.de>
> ---
>
> v2: Fix three more wrong format strings for 32 bit hosts.
>
> qga/commands-posix.c | 8 ++++----
> qga/guest-agent-core.h | 2 +-
> 2 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/qga/commands-posix.c b/qga/commands-posix.c
> index 10682f5..8100bee 100644
> --- a/qga/commands-posix.c
> +++ b/qga/commands-posix.c
> @@ -401,7 +401,7 @@ int64_t qmp_guest_file_open(const char *path, bool has_mode, const char *mode, E
> return -1;
> }
>
> - slog("guest-file-open, handle: %d", handle);
> + slog("guest-file-open, handle: %" PRId64, handle);
> return handle;
> }
>
> @@ -410,7 +410,7 @@ void qmp_guest_file_close(int64_t handle, Error **err)
> GuestFileHandle *gfh = guest_file_handle_find(handle, err);
> int ret;
>
> - slog("guest-file-close called, handle: %ld", handle);
> + slog("guest-file-close called, handle: %" PRId64, handle);
> if (!gfh) {
> return;
> }
> @@ -451,7 +451,7 @@ struct GuestFileRead *qmp_guest_file_read(int64_t handle, bool has_count,
> read_count = fread(buf, 1, count, fh);
> if (ferror(fh)) {
> error_setg_errno(err, errno, "failed to read file");
> - slog("guest-file-read failed, handle: %ld", handle);
> + slog("guest-file-read failed, handle: %" PRId64, handle);
> } else {
> buf[read_count] = 0;
> read_data = g_malloc0(sizeof(GuestFileRead));
> @@ -496,7 +496,7 @@ GuestFileWrite *qmp_guest_file_write(int64_t handle, const char *buf_b64,
> write_count = fwrite(buf, 1, count, fh);
> if (ferror(fh)) {
> error_setg_errno(err, errno, "failed to write to file");
> - slog("guest-file-write failed, handle: %ld", handle);
> + slog("guest-file-write failed, handle: %" PRId64, handle);
> } else {
> write_data = g_malloc0(sizeof(GuestFileWrite));
> write_data->count = write_count;
> diff --git a/qga/guest-agent-core.h b/qga/guest-agent-core.h
> index 624a559..e422208 100644
> --- a/qga/guest-agent-core.h
> +++ b/qga/guest-agent-core.h
> @@ -29,7 +29,7 @@ GACommandState *ga_command_state_new(void);
> bool ga_logging_enabled(GAState *s);
> void ga_disable_logging(GAState *s);
> void ga_enable_logging(GAState *s);
> -void slog(const gchar *fmt, ...);
> +void GCC_FMT_ATTR(1, 2) slog(const gchar *fmt, ...);
> void ga_set_response_delimited(GAState *s);
> bool ga_is_frozen(GAState *s);
> void ga_set_frozen(GAState *s);
next prev parent reply other threads:[~2013-11-18 21:32 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-17 18:19 [Qemu-trivial] [PATCH for 1.7 v2] qga: Fix compiler warnings (missing format attribute, wrong format strings) Stefan Weil
2013-11-17 18:19 ` [Qemu-devel] " Stefan Weil
2013-11-18 21:32 ` Stefan Weil [this message]
2013-11-18 21:32 ` Stefan Weil
2013-11-20 11:49 ` [Qemu-trivial] " Michael Tokarev
2013-11-20 11:49 ` [Qemu-devel] " Michael Tokarev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=528A8750.7000303@weilnetz.de \
--to=sw@weilnetz.de \
--cc=aliguori@amazon.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-trivial@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.