On 10.09.25 21:15, Daniel P. Berrangé wrote:
On Wed, Sep 10, 2025 at 08:55:57PM +0300, Vladimir Sementsov-Ogievskiy wrote:
On 10.09.25 12:44, Daniel P. Berrangé wrote:
@@ -36,7 +37,11 @@ static gboolean ga_channel_listen_accept(GIOChannel *channel,
           g_warning("error converting fd to gsocket: %s", strerror(errno));
           goto out;
       }
-    qemu_socket_set_nonblock(client_fd);
+    if (!qemu_set_blocking(client_fd, false, &err)) {
+        g_warning("errer: %s", error_get_pretty(err));
s/errer/error/


This is a pre-existing problem, but none of this code should be using
g_warning. g_printerr() should have been used for printing error
messages. I'm not expecting you to fix that, just an observation.


Why not g_error()? I see some g_warnings in qga code a correct "warnings", not 
"errors".. And if we use sometimes g_warning, the g_error is more correct pair for it.

Or we don't want any of g_error / g_warning in QEMU code?

g_error will call abort() after printing the message, which will
prevent graceful cleanup and result in a core file, so is not
very desirable to use.

Oh, right, I was stupid)


g_warning will also turn into g_error if G_DEBUG=fatal-warnings
is set.

We really just want a plain message printed on the console with
no side effects, and g_printerr gives us that.



Still, it's strange for me, that we just not use error_reprot()/warn_report() 
everywhere.

I see we have underlying error_vprintf() realization for code without monitor 
in stubs/error-printf.c..


--
Best regards,
Vladimir

Reply via email to