Merge branch 'collectd-4.9' into collectd-4.10
authorFlorian Forster <octo@collectd.org>
Sat, 26 Mar 2011 15:53:22 +0000 (08:53 -0700)
committerFlorian Forster <octo@collectd.org>
Sat, 26 Mar 2011 15:53:22 +0000 (08:53 -0700)
Conflicts:
ChangeLog
version-gen.sh

ChangeLog
src/libvirt.c
src/plugin.c
src/plugin.h

index 2903476..01da68a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
        * regex match: The "Invert" option has been added. Thanks to Julien
          Ammous for his patch.
 
+2011-03-26, Version 4.9.5
+       * collectd: Build issues (compiler warnings) have been fixed. Thanks to
+         Bruno Prémont.
+       * collectd, java plugin, ntpd plugin: Several diagnostic messages have
+         been improved.
+       * collectd: Threshold subsection: Handling of NAN values in the
+         percentage calculation has been fixed.
+       * Documentation: Several updates and additions. Thanks to Sebastian Harl.
+       * libvirt plugin: A bug in reading the virtual CPU statistics has been
+         fixed. Thanks to “JLPC” for reporting this problem.
+       * python plugin: Fix dispatching of values from Python scripts to
+         collectd. Thanks to Gregory Szorc for finding and fixing this
+         problem.
+       * processes plugin: Potentially erroneous behavior has been fixed in an
+         error handling case.
+
 2010-11-27, Version 4.9.4
        * Documentation: Various documentation fixes.
        * collectd: If including one configuration file fails, continue with
index bcbf0e6..91fda7a 100644 (file)
@@ -295,21 +295,31 @@ lv_read (void)
     for (i = 0; i < nr_domains; ++i) {
         virDomainInfo info;
         virVcpuInfoPtr vinfo = NULL;
+        int status;
         int j;
 
-        if (virDomainGetInfo (domains[i], &info) != 0)
+        status = virDomainGetInfo (domains[i], &info);
+        if (status != 0)
+        {
+            ERROR ("libvirt plugin: virDomainGetInfo failed with status %i.",
+                    status);
             continue;
+        }
 
         cpu_submit (info.cpuTime, t, domains[i], "virt_cpu_total");
 
-        vinfo = malloc (info.nrVirtCpu * sizeof vinfo[0]);
+        vinfo = malloc (info.nrVirtCpu * sizeof (vinfo[0]));
         if (vinfo == NULL) {
             ERROR ("libvirt plugin: malloc failed.");
             continue;
         }
 
-        if (virDomainGetVcpus (domains[i], vinfo, info.nrVirtCpu,
-                    NULL, 0) != 0) {
+        status = virDomainGetVcpus (domains[i], vinfo, info.nrVirtCpu,
+                /* cpu map = */ NULL, /* cpu map length = */ 0);
+        if (status < 0)
+        {
+            ERROR ("libvirt plugin: virDomainGetVcpus failed with status %i.",
+                    status);
             free (vinfo);
             continue;
         }
index 9b7cb21..a3f10ae 100644 (file)
@@ -852,7 +852,7 @@ int plugin_register_flush (const char *name,
                                (void *) callback, ud));
 } /* int plugin_register_flush */
 
-int plugin_register_shutdown (char *name,
+int plugin_register_shutdown (const char *name,
                int (*callback) (void))
 {
        return (create_register_callback (&list_shutdown, name,
index 8b9449e..3f94dbc 100644 (file)
@@ -272,7 +272,7 @@ int plugin_register_write (const char *name,
                plugin_write_cb callback, user_data_t *user_data);
 int plugin_register_flush (const char *name,
                plugin_flush_cb callback, user_data_t *user_data);
-int plugin_register_shutdown (char *name,
+int plugin_register_shutdown (const char *name,
                plugin_shutdown_cb callback);
 int plugin_register_data_set (const data_set_t *ds);
 int plugin_register_log (const char *name,