[PATCH] qga: add channel path to error messages

Bjørn Forsman posted 1 patch 1 year, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20221020220346.124381-1-bjorn.forsman@gmail.com
Maintainers: Michael Roth <michael.roth@amd.com>, Konstantin Kostiuk <kkostiuk@redhat.com>
qga/channel-posix.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] qga: add channel path to error messages
Posted by Bjørn Forsman 1 year, 6 months ago
It's useful to know which device was used if/when it fails.

channel-win32.c had this since 2015, with
c69403fcd4a0cb89f838a212ab71e4a1a3464c95 ("qemu-ga: debug printouts to
help troubleshoot installation"), this brings channel-posix.c up to
speed.

Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
---
 qga/channel-posix.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/qga/channel-posix.c b/qga/channel-posix.c
index 6796a02cff..e6dce985ae 100644
--- a/qga/channel-posix.c
+++ b/qga/channel-posix.c
@@ -138,7 +138,7 @@ static gboolean ga_channel_open(GAChannel *c, const gchar *path,
             0
         );
         if (fd == -1) {
-            error_setg_errno(errp, errno, "error opening channel");
+            error_setg_errno(errp, errno, "error opening channel '%s'", path);
             return false;
         }
 #ifdef CONFIG_SOLARIS
@@ -163,7 +163,7 @@ static gboolean ga_channel_open(GAChannel *c, const gchar *path,
         assert(fd < 0);
         fd = qga_open_cloexec(path, O_RDWR | O_NOCTTY | O_NONBLOCK, 0);
         if (fd == -1) {
-            error_setg_errno(errp, errno, "error opening channel");
+            error_setg_errno(errp, errno, "error opening channel '%s'", path);
             return false;
         }
         tcgetattr(fd, &tio);
-- 
2.36.2


Re: [PATCH] qga: add channel path to error messages
Posted by Konstantin Kostiuk 1 year, 6 months ago
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>

On Fri, Oct 21, 2022 at 1:04 AM Bjørn Forsman <bjorn.forsman@gmail.com>
wrote:

> It's useful to know which device was used if/when it fails.
>
> channel-win32.c had this since 2015, with
> c69403fcd4a0cb89f838a212ab71e4a1a3464c95 ("qemu-ga: debug printouts to
> help troubleshoot installation"), this brings channel-posix.c up to
> speed.
>
> Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
> ---
>  qga/channel-posix.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/qga/channel-posix.c b/qga/channel-posix.c
> index 6796a02cff..e6dce985ae 100644
> --- a/qga/channel-posix.c
> +++ b/qga/channel-posix.c
> @@ -138,7 +138,7 @@ static gboolean ga_channel_open(GAChannel *c, const
> gchar *path,
>              0
>          );
>          if (fd == -1) {
> -            error_setg_errno(errp, errno, "error opening channel");
> +            error_setg_errno(errp, errno, "error opening channel '%s'",
> path);
>              return false;
>          }
>  #ifdef CONFIG_SOLARIS
> @@ -163,7 +163,7 @@ static gboolean ga_channel_open(GAChannel *c, const
> gchar *path,
>          assert(fd < 0);
>          fd = qga_open_cloexec(path, O_RDWR | O_NOCTTY | O_NONBLOCK, 0);
>          if (fd == -1) {
> -            error_setg_errno(errp, errno, "error opening channel");
> +            error_setg_errno(errp, errno, "error opening channel '%s'",
> path);
>              return false;
>          }
>          tcgetattr(fd, &tio);
> --
> 2.36.2
>
>
Re: [PATCH] qga: add channel path to error messages
Posted by Konstantin Kostiuk 1 year, 6 months ago
PR was sent
https://patchew.org/QEMU/20221026175518.2636846-1-kkostiuk@redhat.com/

On Wed, Oct 26, 2022 at 8:31 PM Konstantin Kostiuk <kkostiuk@redhat.com>
wrote:

> Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
>
> On Fri, Oct 21, 2022 at 1:04 AM Bjørn Forsman <bjorn.forsman@gmail.com>
> wrote:
>
>> It's useful to know which device was used if/when it fails.
>>
>> channel-win32.c had this since 2015, with
>> c69403fcd4a0cb89f838a212ab71e4a1a3464c95 ("qemu-ga: debug printouts to
>> help troubleshoot installation"), this brings channel-posix.c up to
>> speed.
>>
>> Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
>> ---
>>  qga/channel-posix.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/qga/channel-posix.c b/qga/channel-posix.c
>> index 6796a02cff..e6dce985ae 100644
>> --- a/qga/channel-posix.c
>> +++ b/qga/channel-posix.c
>> @@ -138,7 +138,7 @@ static gboolean ga_channel_open(GAChannel *c, const
>> gchar *path,
>>              0
>>          );
>>          if (fd == -1) {
>> -            error_setg_errno(errp, errno, "error opening channel");
>> +            error_setg_errno(errp, errno, "error opening channel '%s'",
>> path);
>>              return false;
>>          }
>>  #ifdef CONFIG_SOLARIS
>> @@ -163,7 +163,7 @@ static gboolean ga_channel_open(GAChannel *c, const
>> gchar *path,
>>          assert(fd < 0);
>>          fd = qga_open_cloexec(path, O_RDWR | O_NOCTTY | O_NONBLOCK, 0);
>>          if (fd == -1) {
>> -            error_setg_errno(errp, errno, "error opening channel");
>> +            error_setg_errno(errp, errno, "error opening channel '%s'",
>> path);
>>              return false;
>>          }
>>          tcgetattr(fd, &tio);
>> --
>> 2.36.2
>>
>>
Re: [PATCH] qga: add channel path to error messages
Posted by Marc-André Lureau 1 year, 6 months ago
Hi

On Fri, Oct 21, 2022 at 2:31 AM Bjørn Forsman <bjorn.forsman@gmail.com>
wrote:

> It's useful to know which device was used if/when it fails.
>
> channel-win32.c had this since 2015, with
> c69403fcd4a0cb89f838a212ab71e4a1a3464c95 ("qemu-ga: debug printouts to
> help troubleshoot installation"), this brings channel-posix.c up to
> speed.
>
> Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
> ---
>  qga/channel-posix.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/qga/channel-posix.c b/qga/channel-posix.c
> index 6796a02cff..e6dce985ae 100644
> --- a/qga/channel-posix.c
> +++ b/qga/channel-posix.c
> @@ -138,7 +138,7 @@ static gboolean ga_channel_open(GAChannel *c, const
> gchar *path,
>              0
>          );
>          if (fd == -1) {
> -            error_setg_errno(errp, errno, "error opening channel");
> +            error_setg_errno(errp, errno, "error opening channel '%s'",
> path);
>              return false;
>          }
>  #ifdef CONFIG_SOLARIS
> @@ -163,7 +163,7 @@ static gboolean ga_channel_open(GAChannel *c, const
> gchar *path,
>          assert(fd < 0);
>          fd = qga_open_cloexec(path, O_RDWR | O_NOCTTY | O_NONBLOCK, 0);
>          if (fd == -1) {
> -            error_setg_errno(errp, errno, "error opening channel");
> +            error_setg_errno(errp, errno, "error opening channel '%s'",
> path);
>              return false;
>          }
>          tcgetattr(fd, &tio);
> --
> 2.36.2
>
>
>
Wouldn't it be simpler to modify the g_critical() in ga_channel_new()
instead?

    if (!ga_channel_open(c, path, method, listen_fd, &err)) {
        g_critical("Failed to open %s: %s", path, error_get_pretty(err));
...

-- 
Marc-André Lureau
Re: [PATCH] qga: add channel path to error messages
Posted by Bjørn Forsman 1 year, 6 months ago
On Fri, 21 Oct 2022 at 08:53, Marc-André Lureau
<marcandre.lureau@gmail.com> wrote:
> [...]
> Wouldn't it be simpler to modify the g_critical() in ga_channel_new() instead?
>
>     if (!ga_channel_open(c, path, method, listen_fd, &err)) {
>         g_critical("Failed to open %s: %s", path, error_get_pretty(err));

Sounds like a good idea -- it's a more central place.

However, I'm hesitant about doing that now:
* This patch just syncs channel-posix.c up with channel-win32.c.
* I don't have a way to test the windows code so I'd rather not touch
it (which I think one should do to keep the win32/posix files mostly
in sync).
* My test iteration time on this code is quite slow.
* I'm a noob -- first time submitter.

Can we merge as-is please?

/Bjørn