]> xenbits.xensource.com Git - libvirt.git/commitdiff
util: Initialize virLogMutex statically
authorMartin Kletzander <mkletzan@redhat.com>
Wed, 15 Dec 2021 15:36:51 +0000 (16:36 +0100)
committerMartin Kletzander <mkletzan@redhat.com>
Wed, 5 Jan 2022 13:08:39 +0000 (14:08 +0100)
The only difference is that we are not going to be guaranteed that the mutex is
normal (as opposed to recursive, although there is no system known to me that
would default to recursive mutexes), but that was done only to find occasional
errors (during runtime, back in 2010, commit 336fd879c00b).  Functions using
this mutex are mostly stable and unchanging, and it makes the virLogOnceInit()
function only return 0 (or possibly abort in glib calls).  On top of that we can
assume that the virLogMutex is always initialized which enables us to be more
consistent in some early error reporting.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Erik Skultety <eskultet@redhat.com>
src/util/virlog.c

index e368cada6024bd6cd743e09970c9b2c349351451..5848940c6ccbe08d7970931c435cd00be5b291be 100644 (file)
@@ -125,7 +125,7 @@ static void virLogOutputToFd(virLogSource *src,
 /*
  * Logs accesses must be serialized though a mutex
  */
-virMutex virLogMutex;
+static virMutex virLogMutex = VIR_MUTEX_INITIALIZER;
 
 void
 virLogLock(void)
@@ -250,9 +250,6 @@ virLogPriorityString(virLogPriority lvl)
 static int
 virLogOnceInit(void)
 {
-    if (virMutexInit(&virLogMutex) < 0)
-        return -1;
-
     virLogLock();
     virLogDefaultPriority = VIR_LOG_DEFAULT;