<div dir="ltr">ping<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Aug 5, 2020 at 3:56 PM Han Han <<a href="mailto:hhan@redhat.com">hhan@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Signed-off-by: Han Han <<a href="mailto:hhan@redhat.com" target="_blank">hhan@redhat.com</a>><br>
---<br>
 src/logging/log_daemon.c | 26 ++++++--------------------<br>
 src/logging/log_daemon.h |  4 ++--<br>
 2 files changed, 8 insertions(+), 22 deletions(-)<br>
<br>
diff --git a/src/logging/log_daemon.c b/src/logging/log_daemon.c<br>
index 028f771f14..0649a70c9d 100644<br>
--- a/src/logging/log_daemon.c<br>
+++ b/src/logging/log_daemon.c<br>
@@ -56,7 +56,7 @@<br>
 VIR_LOG_INIT("logging.log_daemon");<br>
<br>
 struct _virLogDaemon {<br>
-    virMutex lock;<br>
+    GMutex lock;<br>
     virNetDaemonPtr dmn;<br>
     virLogHandlerPtr handler;<br>
 };<br>
@@ -86,7 +86,7 @@ virLogDaemonFree(virLogDaemonPtr logd)<br>
         return;<br>
<br>
     virObjectUnref(logd->handler);<br>
-    virMutexDestroy(&logd->lock);<br>
+    g_mutex_clear(&logd->lock);<br>
     virObjectUnref(logd->dmn);<br>
<br>
     VIR_FREE(logd);<br>
@@ -119,12 +119,7 @@ virLogDaemonNew(virLogDaemonConfigPtr config, bool privileged)<br>
     if (VIR_ALLOC(logd) < 0)<br>
         return NULL;<br>
<br>
-    if (virMutexInit(&logd->lock) < 0) {<br>
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",<br>
-                       _("Unable to initialize mutex"));<br>
-        VIR_FREE(logd);<br>
-        return NULL;<br>
-    }<br>
+    g_mutex_init(&logd->lock);<br>
<br>
     if (!(logd->dmn = virNetDaemonNew()))<br>
         goto error;<br>
@@ -222,12 +217,7 @@ virLogDaemonNewPostExecRestart(virJSONValuePtr object, bool privileged,<br>
     if (VIR_ALLOC(logd) < 0)<br>
         return NULL;<br>
<br>
-    if (virMutexInit(&logd->lock) < 0) {<br>
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",<br>
-                       _("Unable to initialize mutex"));<br>
-        VIR_FREE(logd);<br>
-        return NULL;<br>
-    }<br>
+    g_mutex_init(&logd->lock);<br>
<br>
     if (!(child = virJSONValueObjectGet(object, "daemon"))) {<br>
         virReportError(VIR_ERR_INTERNAL_ERROR, "%s",<br>
@@ -325,7 +315,7 @@ virLogDaemonClientFree(void *opaque)<br>
               priv,<br>
               (unsigned long long)priv->clientPid);<br>
<br>
-    virMutexDestroy(&priv->lock);<br>
+    g_mutex_clear(&priv->lock);<br>
     VIR_FREE(priv);<br>
 }<br>
<br>
@@ -343,11 +333,7 @@ virLogDaemonClientNew(virNetServerClientPtr client,<br>
     if (VIR_ALLOC(priv) < 0)<br>
         return NULL;<br>
<br>
-    if (virMutexInit(&priv->lock) < 0) {<br>
-        VIR_FREE(priv);<br>
-        virReportSystemError(errno, "%s", _("unable to init mutex"));<br>
-        return NULL;<br>
-    }<br>
+    g_mutex_init(&priv->lock);<br>
<br>
     if (virNetServerClientGetUNIXIdentity(client,<br>
                                           &clientuid,<br>
diff --git a/src/logging/log_daemon.h b/src/logging/log_daemon.h<br>
index fa661e1793..6979bdcd5a 100644<br>
--- a/src/logging/log_daemon.h<br>
+++ b/src/logging/log_daemon.h<br>
@@ -20,7 +20,7 @@<br>
<br>
 #pragma once<br>
<br>
-#include "virthread.h"<br>
+#include <glib.h><br>
 #include "log_handler.h"<br>
<br>
 typedef struct _virLogDaemon virLogDaemon;<br>
@@ -30,7 +30,7 @@ typedef struct _virLogDaemonClient virLogDaemonClient;<br>
 typedef virLogDaemonClient *virLogDaemonClientPtr;<br>
<br>
 struct _virLogDaemonClient {<br>
-    virMutex lock;<br>
+    GMutex lock;<br>
<br>
     pid_t clientPid;<br>
 };<br>
-- <br>
2.27.0<br>
<br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Best regards,</div><div dir="ltr">-----------------------------------<br></div><div dir="ltr">Han Han<br>Senior Quality Engineer<br>Redhat.<br><br>Email: <a href="mailto:hhan@redhat.com" target="_blank">hhan@redhat.com</a><br>Phone: +861065339333<br></div></div></div></div></div></div>