From: Markus Armbruster <armbru@redhat.com>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>
Cc: qemu-devel@nongnu.org, Markus Armbruster <armbru@redhat.com>,
qemu-arm@nongnu.org, qemu-ppc@nongnu.org,
qemu-block@nongnu.org, qemu-s390x@nongnu.org,
Konstantin Kostiuk <kkostiuk@redhat.com>,
Michael Roth <michael.roth@amd.com>
Subject: Re: [PATCH v2 20/22] qapi: Inline and remove QERR_QGA_COMMAND_FAILED definition
Date: Fri, 20 Oct 2023 15:03:49 +0200 [thread overview]
Message-ID: <877cnh1m4q.fsf@pond.sub.org> (raw)
In-Reply-To: <20231005045041.52649-21-philmd@linaro.org> ("Philippe Mathieu-Daudé"'s message of "Thu, 5 Oct 2023 06:50:37 +0200")
Philippe Mathieu-Daudé <philmd@linaro.org> writes:
> Address the comment added in commit 4629ed1e98
> ("qerror: Finally unused, clean up"), from 2015:
>
> /*
> * These macros will go away, please don't use
> * in new code, and do not add new ones!
> */
>
> Mechanical transformation using the following
> coccinelle semantic patch:
>
> @match exists@
> expression errp;
> expression errmsg;
> @@
> error_setg(errp, QERR_QGA_COMMAND_FAILED, errmsg);
>
> @script:python strformat depends on match@
> errmsg << match.errmsg;
> fixedfmt; // new var
> @@
> # Format skipping '"'.
> fixedfmt = f'"Guest agent command failed, error was \'{errmsg[1:-1]}\'"'
> coccinelle.fixedfmt = cocci.make_ident(fixedfmt)
>
> @replace@
> expression match.errp;
> expression match.errmsg;
> identifier strformat.fixedfmt;
> @@
> - error_setg(errp, QERR_QGA_COMMAND_FAILED, errmsg);
> + error_setg(errp, fixedfmt);
>
> then manually removing the definition in include/qapi/qmp/qerror.h.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> include/qapi/qmp/qerror.h | 3 ---
> qga/commands-win32.c | 38 ++++++++++++++++++++------------------
> qga/commands.c | 7 ++++---
> 3 files changed, 24 insertions(+), 24 deletions(-)
>
> diff --git a/include/qapi/qmp/qerror.h b/include/qapi/qmp/qerror.h
> index e094f13114..840831cc6a 100644
> --- a/include/qapi/qmp/qerror.h
> +++ b/include/qapi/qmp/qerror.h
> @@ -17,9 +17,6 @@
> * add new ones!
> */
>
> -#define QERR_QGA_COMMAND_FAILED \
> - "Guest agent command failed, error was '%s'"
> -
> #define QERR_UNSUPPORTED \
> "this feature or command is not currently supported"
>
> diff --git a/qga/commands-win32.c b/qga/commands-win32.c
> index 946dbafbb6..aa8c9770d4 100644
> --- a/qga/commands-win32.c
> +++ b/qga/commands-win32.c
> @@ -245,7 +245,8 @@ int64_t qmp_guest_file_open(const char *path, const char *mode, Error **errp)
>
> done:
> if (gerr) {
> - error_setg(errp, QERR_QGA_COMMAND_FAILED, gerr->message);
> + error_setg(errp,
> + "Guest agent command failed, error was 'err -> messag'");
Oopsie :)
Two more below.
> g_error_free(gerr);
> }
> g_free(w_path);
> @@ -279,8 +280,8 @@ static void acquire_privilege(const char *name, Error **errp)
> TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &token))
> {
> if (!LookupPrivilegeValue(NULL, name, &priv.Privileges[0].Luid)) {
> - error_setg(errp, QERR_QGA_COMMAND_FAILED,
> - "no luid for requested privilege");
> + error_setg(errp,
> + "Guest agent command failed, error was 'no luid for requested privilege'");
> goto out;
> }
>
I don't like this error message. I'm going to pretend I didn't see it.
[...]
next prev parent reply other threads:[~2023-10-20 13:05 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-05 4:50 [PATCH v2 00/22] qapi: Kill 'qapi/qmp/qerror.h' for good Philippe Mathieu-Daudé
2023-10-05 4:50 ` [PATCH v2 01/22] qapi: Inline and remove QERR_BUS_NO_HOTPLUG definition Philippe Mathieu-Daudé
2023-10-05 5:55 ` Cédric Le Goater
2023-10-20 5:49 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 02/22] qapi: Inline and remove QERR_DEVICE_HAS_NO_MEDIUM definition Philippe Mathieu-Daudé
2023-10-20 6:00 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 03/22] qapi: Inline and remove QERR_DEVICE_IN_USE definition Philippe Mathieu-Daudé
2023-10-05 4:50 ` [PATCH v2 04/22] qapi: Inline and remove QERR_DEVICE_NO_HOTPLUG definition Philippe Mathieu-Daudé
2023-10-20 6:03 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 05/22] qapi: Inline QERR_INVALID_PARAMETER definition (constant parameter) Philippe Mathieu-Daudé
2023-10-20 7:07 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 06/22] qapi: Inline and remove QERR_INVALID_PARAMETER definition Philippe Mathieu-Daudé
2023-10-20 7:16 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 07/22] qapi: Inline QERR_INVALID_PARAMETER_TYPE definition (constant param) Philippe Mathieu-Daudé
2023-10-20 7:18 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 08/22] qapi: Inline QERR_INVALID_PARAMETER_TYPE definition (constant value) Philippe Mathieu-Daudé
2023-10-05 4:50 ` [PATCH v2 09/22] qapi: Inline and remove QERR_INVALID_PARAMETER_TYPE definition Philippe Mathieu-Daudé
2023-10-05 4:50 ` [PATCH v2 10/22] qapi: Correct error message for 'vcpu_dirty_limit' parameter Philippe Mathieu-Daudé
2023-10-05 6:33 ` Juan Quintela
2023-10-20 8:33 ` Markus Armbruster
2023-10-20 9:55 ` Juan Quintela
2023-10-05 4:50 ` [PATCH v2 11/22] qapi: Inline QERR_INVALID_PARAMETER_VALUE definition (constant value) Philippe Mathieu-Daudé
2023-10-05 6:34 ` Juan Quintela
2023-10-20 11:32 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 12/22] qapi: Inline QERR_INVALID_PARAMETER_VALUE definition (constant param) Philippe Mathieu-Daudé
2023-10-05 4:50 ` [PATCH v2 13/22] qapi: Inline and remove QERR_INVALID_PARAMETER_VALUE definition Philippe Mathieu-Daudé
2023-10-05 4:50 ` [PATCH v2 14/22] qapi: Inline and remove QERR_IO_ERROR definition Philippe Mathieu-Daudé
2023-10-20 11:50 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 15/22] qapi: Inline and remove QERR_MIGRATION_ACTIVE definition Philippe Mathieu-Daudé
2023-10-05 4:50 ` [PATCH v2 16/22] qapi: Inline QERR_MISSING_PARAMETER definition (constant parameter) Philippe Mathieu-Daudé
2023-10-20 12:58 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 17/22] qapi: Inline and remove QERR_MISSING_PARAMETER definition Philippe Mathieu-Daudé
2023-10-05 4:50 ` [PATCH v2 18/22] qapi: Inline and remove QERR_PROPERTY_VALUE_BAD definition Philippe Mathieu-Daudé
2023-10-20 13:00 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 19/22] qapi: Inline and remove QERR_PROPERTY_VALUE_OUT_OF_RANGE definition Philippe Mathieu-Daudé
2023-10-20 13:08 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 20/22] qapi: Inline and remove QERR_QGA_COMMAND_FAILED definition Philippe Mathieu-Daudé
2023-10-20 13:03 ` Markus Armbruster [this message]
2023-10-05 4:50 ` [RFC PATCH v2 21/22] qapi: Inline and remove QERR_UNSUPPORTED definition Philippe Mathieu-Daudé
2023-10-05 11:22 ` Markus Armbruster
2023-10-05 11:57 ` Markus Armbruster
2024-06-12 12:23 ` Philippe Mathieu-Daudé
2024-06-12 13:07 ` Markus Armbruster
2024-06-12 13:27 ` Konstantin Kostiuk
2024-06-12 13:45 ` Philippe Mathieu-Daudé
2023-10-05 11:57 ` Markus Armbruster
2023-10-05 4:50 ` [PATCH v2 22/22] qapi: Remove 'qapi/qmp/qerror.h' header Philippe Mathieu-Daudé
2023-10-05 9:26 ` [PATCH v2 00/22] qapi: Kill 'qapi/qmp/qerror.h' for good Markus Armbruster
2023-10-20 13:15 ` Markus Armbruster
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=877cnh1m4q.fsf@pond.sub.org \
--to=armbru@redhat.com \
--cc=kkostiuk@redhat.com \
--cc=michael.roth@amd.com \
--cc=philmd@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-s390x@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.