]> xenbits.xensource.com Git - libvirt.git/commitdiff
Fix usage of virReportSystemError
authorJiri Denemark <jdenemar@redhat.com>
Fri, 28 Nov 2014 08:37:42 +0000 (09:37 +0100)
committerJiri Denemark <jdenemar@redhat.com>
Fri, 28 Nov 2014 08:42:13 +0000 (09:42 +0100)
virReportSystemError is reserved for reporting system errors, calling it
with VIR_ERR_* error codes produces error messages that do not make any
sense, such as

    internal error: guest failed to start: Kernel doesn't support user
    namespace: Link has been severed

We should prohibit wrong usage with a syntax-check rule.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
cfg.mk
src/lxc/lxc_container.c
src/openvz/openvz_conf.c
src/qemu/qemu_migration.c
src/util/virnetdevopenvswitch.c
src/util/virobject.c

diff --git a/cfg.mk b/cfg.mk
index d829a3c83b8e119cbf7abf8a9e4c4efdbf41cbe0..3f35479437442c7e79f32ce455bb64f3c38980fd 100644 (file)
--- a/cfg.mk
+++ b/cfg.mk
@@ -983,6 +983,11 @@ sc_prohibit_devname:
        halt='avoid using 'devname' as FreeBSD exports the symbol' \
          $(_sc_search_regexp)
 
+sc_prohibit_system_error_with_vir_err:
+       @prohibit='\bvirReportSystemError *\(VIR_ERR_' \
+       halt='do not use virReportSystemError with VIR_ERR_* error codes' \
+         $(_sc_search_regexp)
+
 # We don't use this feature of maint.mk.
 prev_version_file = /dev/null
 
index 334a1dfc6f6eb8706c5cda37c9d6cb37e1acbc8b..3b08b86974399f2900dd68b7df359eb384c8ea6b 100644 (file)
@@ -2309,8 +2309,8 @@ int lxcContainerStart(virDomainDefPtr def,
             VIR_DEBUG("Enable user namespace");
             cflags |= CLONE_NEWUSER;
         } else {
-            virReportSystemError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
-                                 _("Kernel doesn't support user namespace"));
+            virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+                           _("Kernel doesn't support user namespace"));
             VIR_FREE(stack);
             return -1;
         }
index edf37d0d961c812e044b773e0a2c30aa1bb6fb5a..4b918c0f5a7c4470f7f3e3a3004fb74c795fc1fe 100644 (file)
@@ -405,8 +405,8 @@ openvzReadFSConf(virDomainDefPtr def,
             /* Ensure that we can multiply by 1024 without overflowing. */
             if (barrier > ULLONG_MAX / 1024 ||
                 limit > ULLONG_MAX / 1024) {
-                virReportSystemError(VIR_ERR_OVERFLOW, "%s",
-                                     _("Unable to parse quota"));
+                virReportError(VIR_ERR_OVERFLOW, "%s",
+                               _("Unable to parse quota"));
                 goto error;
             }
             fs->space_soft_limit = barrier * 1024; /* unit is bytes */
index a1b145826e16f5b9cc69c1fe1bc610c10a9497a8..74cda96cd6bf8eb47413da3846a2939ebf072419 100644 (file)
@@ -369,9 +369,9 @@ qemuMigrationCookieNetworkAlloc(virQEMUDriverPtr driver ATTRIBUTE_UNUSED,
             case VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH:
                 if (virNetDevOpenvswitchGetMigrateData(&mig->net[i].portdata,
                                                        netptr->ifname) != 0) {
-                        virReportSystemError(VIR_ERR_INTERNAL_ERROR,
-                                             _("Unable to run command to get OVS port data for "
-                                             "interface %s"), netptr->ifname);
+                        virReportError(VIR_ERR_INTERNAL_ERROR,
+                                       _("Unable to run command to get OVS port data for "
+                                         "interface %s"), netptr->ifname);
                         goto error;
                 }
                 break;
@@ -2223,9 +2223,9 @@ qemuDomainMigrateOPDRelocate(virQEMUDriverPtr driver ATTRIBUTE_UNUSED,
         case VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH:
             if (virNetDevOpenvswitchSetMigrateData(cookie->network->net[i].portdata,
                                                    netptr->ifname) != 0) {
-                virReportSystemError(VIR_ERR_INTERNAL_ERROR,
-                                     _("Unable to run command to set OVS port data for "
-                                     "interface %s"), netptr->ifname);
+                virReportError(VIR_ERR_INTERNAL_ERROR,
+                               _("Unable to run command to set OVS port data for "
+                                 "interface %s"), netptr->ifname);
                 goto cleanup;
             }
             break;
index 8ea1def86c58568ec7d775a63c925a258fe57558..e5c87bb751ad2beb6fe8b7ad44a9678cb9e79594 100644 (file)
@@ -147,9 +147,9 @@ int virNetDevOpenvswitchAddPort(const char *brname, const char *ifname,
     }
 
     if (virCommandRun(cmd, NULL) < 0) {
-        virReportSystemError(VIR_ERR_INTERNAL_ERROR,
-                             _("Unable to add port %s to OVS bridge %s"),
-                             ifname, brname);
+        virReportError(VIR_ERR_INTERNAL_ERROR,
+                       _("Unable to add port %s to OVS bridge %s"),
+                       ifname, brname);
         goto cleanup;
     }
 
@@ -181,8 +181,8 @@ int virNetDevOpenvswitchRemovePort(const char *brname ATTRIBUTE_UNUSED, const ch
     virCommandAddArgList(cmd, "--timeout=5", "--", "--if-exists", "del-port", ifname, NULL);
 
     if (virCommandRun(cmd, NULL) < 0) {
-        virReportSystemError(VIR_ERR_INTERNAL_ERROR,
-                             _("Unable to delete port %s from OVS"), ifname);
+        virReportError(VIR_ERR_INTERNAL_ERROR,
+                       _("Unable to delete port %s from OVS"), ifname);
         goto cleanup;
     }
 
@@ -213,9 +213,9 @@ int virNetDevOpenvswitchGetMigrateData(char **migrate, const char *ifname)
 
     /* Run the command */
     if (virCommandRun(cmd, NULL) < 0) {
-        virReportSystemError(VIR_ERR_INTERNAL_ERROR,
-                             _("Unable to run command to get OVS port data for "
-                             "interface %s"), ifname);
+        virReportError(VIR_ERR_INTERNAL_ERROR,
+                       _("Unable to run command to get OVS port data for "
+                         "interface %s"), ifname);
         goto cleanup;
     }
 
@@ -247,9 +247,9 @@ int virNetDevOpenvswitchSetMigrateData(char *migrate, const char *ifname)
 
     /* Run the command */
     if (virCommandRun(cmd, NULL) < 0) {
-        virReportSystemError(VIR_ERR_INTERNAL_ERROR,
-                             _("Unable to run command to set OVS port data for "
-                             "interface %s"), ifname);
+        virReportError(VIR_ERR_INTERNAL_ERROR,
+                       _("Unable to run command to set OVS port data for "
+                         "interface %s"), ifname);
         goto cleanup;
     }
 
index 6cb84b4a90476adb196a5c9d24983800dec8625d..9ccd3104988e5bd2418d8ad81b8dc9388ce479f0 100644 (file)
@@ -220,8 +220,8 @@ void *virObjectLockableNew(virClassPtr klass)
         return NULL;
 
     if (virMutexInit(&obj->lock) < 0) {
-        virReportSystemError(VIR_ERR_INTERNAL_ERROR, "%s",
-                             _("Unable to initialize mutex"));
+        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
+                       _("Unable to initialize mutex"));
         virObjectUnref(obj);
         return NULL;
     }