[libvirt] [PATCH 4/7] maint: avoid static zero init in tests

Eric Blake eblake at redhat.com
Tue Oct 28 20:34:47 UTC 2014


C guarantees that static variables are zero-initialized.  Some older
compilers (and also gcc -fno-zero-initialized-in-bss) create larger
binaries if you explicitly zero-initialize a static variable.

* tests/eventtest.c: Fix initialization.
* tests/testutils.c: Likewise.
* tests/virhostdevtest.c: Likewise.
* tests/virportallocatortest.c: Likewise.
* tests/virscsitest.c: Likewise.

Signed-off-by: Eric Blake <eblake at redhat.com>
---
 tests/eventtest.c            |  6 +++---
 tests/testutils.c            | 12 ++++++------
 tests/virhostdevtest.c       |  2 +-
 tests/virportallocatortest.c |  2 +-
 tests/virscsitest.c          |  2 +-
 5 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/tests/eventtest.c b/tests/eventtest.c
index 2cfa0c6..87b49d3 100644
--- a/tests/eventtest.c
+++ b/tests/eventtest.c
@@ -1,7 +1,7 @@
 /*
  * eventtest.c: Test the libvirtd event loop impl
  *
- * Copyright (C) 2009, 2011-2013 Red Hat, Inc.
+ * Copyright (C) 2009, 2011-2014 Red Hat, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -116,9 +116,9 @@ testTimer(int timer, void *data)

 static pthread_mutex_t eventThreadMutex = PTHREAD_MUTEX_INITIALIZER;
 static pthread_cond_t eventThreadRunCond = PTHREAD_COND_INITIALIZER;
-static int eventThreadRunOnce = 0;
+static int eventThreadRunOnce;
 static pthread_cond_t eventThreadJobCond = PTHREAD_COND_INITIALIZER;
-static int eventThreadJobDone = 0;
+static int eventThreadJobDone;


 ATTRIBUTE_NORETURN static void *eventThreadLoop(void *data ATTRIBUTE_UNUSED) {
diff --git a/tests/testutils.c b/tests/testutils.c
index dd65fe8..9d6980f 100644
--- a/tests/testutils.c
+++ b/tests/testutils.c
@@ -74,20 +74,20 @@ static unsigned int testVerbose = -1;
 static unsigned int testExpensive = -1;

 #ifdef TEST_OOM
-static unsigned int testOOM = 0;
+static unsigned int testOOM;
 static unsigned int testOOMStart = -1;
 static unsigned int testOOMEnd = -1;
-static unsigned int testOOMTrace = 0;
+static unsigned int testOOMTrace;
 # ifdef TEST_OOM_TRACE
 void *testAllocStack[30];
 int ntestAllocStack;
 # endif
 #endif
-static bool testOOMActive = false;
+static bool testOOMActive;

-static size_t testCounter = 0;
-static size_t testStart = 0;
-static size_t testEnd = 0;
+static size_t testCounter;
+static size_t testStart;
+static size_t testEnd;

 char *progname;

diff --git a/tests/virhostdevtest.c b/tests/virhostdevtest.c
index de4cdde..1e93819 100644
--- a/tests/virhostdevtest.c
+++ b/tests/virhostdevtest.c
@@ -53,7 +53,7 @@ static const unsigned char *uuid =
 static int nhostdevs = 3;
 static virDomainHostdevDefPtr hostdevs[] = {NULL, NULL, NULL};
 static virPCIDevicePtr dev[] = {NULL, NULL, NULL};
-static virHostdevManagerPtr mgr = NULL;
+static virHostdevManagerPtr mgr;

 static void
 myCleanup(void)
diff --git a/tests/virportallocatortest.c b/tests/virportallocatortest.c
index 96d2ade..ef503ce 100644
--- a/tests/virportallocatortest.c
+++ b/tests/virportallocatortest.c
@@ -36,7 +36,7 @@
 #  include <netinet/in.h>
 #  include <stdio.h>

-static bool host_has_ipv6 = false;
+static bool host_has_ipv6;
 static int (*realsocket)(int domain, int type, int protocol);

 static void init_syms(void)
diff --git a/tests/virscsitest.c b/tests/virscsitest.c
index b4ed5e9..a86ca28 100644
--- a/tests/virscsitest.c
+++ b/tests/virscsitest.c
@@ -34,7 +34,7 @@
 VIR_LOG_INIT("tests.scsitest");

 static const char *abs_top_srcdir;
-static char *virscsi_prefix = NULL;
+static char *virscsi_prefix;

 static int
 test1(const void *data ATTRIBUTE_UNUSED)
-- 
1.9.3




More information about the libvir-list mailing list