Merge remote-tracking branch 'origin/collectd-5.8'
[collectd.git] / src / vmem.c
index 98c4c2a..95cfbaf 100644 (file)
 #include "plugin.h"
 
 #if KERNEL_LINUX
-static const char *config_keys[] =
-{
-  "Verbose"
-};
-static int config_keys_num = STATIC_ARRAY_SIZE (config_keys);
+static const char *config_keys[] = {"Verbose"};
+static int config_keys_num = STATIC_ARRAY_SIZE(config_keys);
 
 static int verbose_output = 0;
 /* #endif KERNEL_LINUX */
 
 #else
-# error "No applicable input method."
+#error "No applicable input method."
 #endif /* HAVE_LIBSTATGRAB */
 
-static void submit (const char *plugin_instance, const char *type,
-    const char *type_instance, value_t *values, int values_len)
-{
+static void submit(const char *plugin_instance, const char *type,
+                   const char *type_instance, value_t *values, int values_len) {
   value_list_t vl = VALUE_LIST_INIT;
 
   vl.values = values;
   vl.values_len = values_len;
 
-  sstrncpy (vl.plugin, "vmem", sizeof (vl.plugin));
+  sstrncpy(vl.plugin, "vmem", sizeof(vl.plugin));
   if (plugin_instance != NULL)
-    sstrncpy (vl.plugin_instance, plugin_instance, sizeof (vl.plugin_instance));
-  sstrncpy (vl.type, type, sizeof (vl.type));
+    sstrncpy(vl.plugin_instance, plugin_instance, sizeof(vl.plugin_instance));
+  sstrncpy(vl.type, type, sizeof(vl.type));
   if (type_instance != NULL)
-    sstrncpy (vl.type_instance, type_instance, sizeof (vl.type_instance));
+    sstrncpy(vl.type_instance, type_instance, sizeof(vl.type_instance));
 
-  plugin_dispatch_values (&vl);
+  plugin_dispatch_values(&vl);
 } /* void vmem_submit */
 
-static void submit_two (const char *plugin_instance, const char *type,
-    const char *type_instance, derive_t c0, derive_t c1)
-{
+static void submit_two(const char *plugin_instance, const char *type,
+                       const char *type_instance, derive_t c0, derive_t c1) {
   value_t values[] = {
-    { .derive = c0 },
-    { .derive = c1 },
+      {.derive = c0}, {.derive = c1},
   };
 
-  submit (plugin_instance, type, type_instance,
-      values, STATIC_ARRAY_SIZE (values));
+  submit(plugin_instance, type, type_instance, values,
+         STATIC_ARRAY_SIZE(values));
 } /* void submit_one */
 
-static void submit_one (const char *plugin_instance, const char *type,
-    const char *type_instance, value_t value)
-{
-  submit (plugin_instance, type, type_instance, &value, 1);
+static void submit_one(const char *plugin_instance, const char *type,
+                       const char *type_instance, value_t value) {
+  submit(plugin_instance, type, type_instance, &value, 1);
 } /* void submit_one */
 
-static int vmem_config (const char *key, const char *value)
-{
-  if (strcasecmp ("Verbose", key) == 0)
-  {
-    if (IS_TRUE (value))
+static int vmem_config(const char *key, const char *value) {
+  if (strcasecmp("Verbose", key) == 0) {
+    if (IS_TRUE(value))
       verbose_output = 1;
     else
       verbose_output = 0;
-  }
-  else
-  {
-    return (-1);
+  } else {
+    return -1;
   }
 
-  return (0);
+  return 0;
 } /* int vmem_config */
 
-static int vmem_read (void)
-{
+static int vmem_read(void) {
 #if KERNEL_LINUX
   derive_t pgpgin = 0;
   derive_t pgpgout = 0;
@@ -114,17 +102,13 @@ static int vmem_read (void)
   FILE *fh;
   char buffer[1024];
 
-  fh = fopen ("/proc/vmstat", "r");
-  if (fh == NULL)
-  {
-    char errbuf[1024];
-    ERROR ("vmem plugin: fopen (/proc/vmstat) failed: %s",
-       sstrerror (errno, errbuf, sizeof (errbuf)));
-    return (-1);
+  fh = fopen("/proc/vmstat", "r");
+  if (fh == NULL) {
+    ERROR("vmem plugin: fopen (/proc/vmstat) failed: %s", STRERRNO);
+    return -1;
   }
 
-  while (fgets (buffer, sizeof (buffer), fh) != NULL)
-  {
+  while (fgets(buffer, sizeof(buffer), fh) != NULL) {
     char *fields[4];
     int fields_num;
     char *key;
@@ -132,19 +116,19 @@ static int vmem_read (void)
     derive_t counter;
     gauge_t gauge;
 
-    fields_num = strsplit (buffer, fields, STATIC_ARRAY_SIZE (fields));
+    fields_num = strsplit(buffer, fields, STATIC_ARRAY_SIZE(fields));
     if (fields_num != 2)
       continue;
 
     key = fields[0];
 
     endptr = NULL;
-    counter = strtoll (fields[1], &endptr, 10);
+    counter = strtoll(fields[1], &endptr, 10);
     if (fields[1] == endptr)
       continue;
 
     endptr = NULL;
-    gauge = strtod (fields[1], &endptr);
+    gauge = strtod(fields[1], &endptr);
     if (fields[1] == endptr)
       continue;
 
@@ -153,41 +137,30 @@ static int vmem_read (void)
      *
      * The total number of {inst} pages, e. g dirty pages.
      */
-    if (strncmp ("nr_", key, strlen ("nr_")) == 0)
-    {
-      char *inst = key + strlen ("nr_");
-      if (strcmp(inst, "dirtied") == 0 || strcmp(inst, "written") == 0)
-      {
-        value_t value = { .derive = counter };
-        submit_one (NULL, "vmpage_action", inst, value);
-      }
-      else
-      {
-        value_t value = { .gauge = gauge };
-        submit_one (NULL, "vmpage_number", inst, value);
+    if (strncmp("nr_", key, strlen("nr_")) == 0) {
+      char *inst = key + strlen("nr_");
+      if (strcmp(inst, "dirtied") == 0 || strcmp(inst, "written") == 0) {
+        value_t value = {.derive = counter};
+        submit_one(NULL, "vmpage_action", inst, value);
+      } else {
+        value_t value = {.gauge = gauge};
+        submit_one(NULL, "vmpage_number", inst, value);
       }
     }
 
     /*
      * Page in and page outs. For memory and swap.
      */
-    else if (strcmp ("pgpgin", key) == 0)
-    {
+    else if (strcmp("pgpgin", key) == 0) {
       pgpgin = counter;
       pgpgvalid |= 0x01;
-    }
-    else if (strcmp ("pgpgout", key) == 0)
-    {
+    } else if (strcmp("pgpgout", key) == 0) {
       pgpgout = counter;
       pgpgvalid |= 0x02;
-    }
-    else if (strcmp ("pswpin", key) == 0)
-    {
+    } else if (strcmp("pswpin", key) == 0) {
       pswpin = counter;
       pswpvalid |= 0x01;
-    }
-    else if (strcmp ("pswpout", key) == 0)
-    {
+    } else if (strcmp("pswpout", key) == 0) {
       pswpout = counter;
       pswpvalid |= 0x02;
     }
@@ -195,13 +168,10 @@ static int vmem_read (void)
     /*
      * Pagefaults
      */
-    else if (strcmp ("pgfault", key) == 0)
-    {
+    else if (strcmp("pgfault", key) == 0) {
       pgfault = counter;
       pgfaultvalid |= 0x01;
-    }
-    else if (strcmp ("pgmajfault", key) == 0)
-    {
+    } else if (strcmp("pgmajfault", key) == 0) {
       pgmajfault = counter;
       pgfaultvalid |= 0x02;
     }
@@ -216,48 +186,38 @@ static int vmem_read (void)
      * Number of page allocations, refills, steals and scans. This is collected
      * ``per zone'', i. e. for DMA, DMA32, normal and possibly highmem.
      */
-    else if (strncmp ("pgalloc_", key, strlen ("pgalloc_")) == 0)
-    {
-      char *inst = key + strlen ("pgalloc_");
-      value_t value  = { .derive = counter };
-      submit_one (inst, "vmpage_action", "alloc", value);
-    }
-    else if (strncmp ("pgrefill_", key, strlen ("pgrefill_")) == 0)
-    {
-      char *inst = key + strlen ("pgrefill_");
-      value_t value  = { .derive = counter };
-      submit_one (inst, "vmpage_action", "refill", value);
-    }
-    else if (strncmp ("pgsteal_kswapd_", key, strlen ("pgsteal_kswapd_")) == 0)
-    {
-      char *inst = key + strlen ("pgsteal_kswapd_");
-      value_t value  = { .derive = counter };
-      submit_one (inst, "vmpage_action", "steal_kswapd", value);
-    }
-    else if (strncmp ("pgsteal_direct_", key, strlen ("pgsteal_direct_")) == 0)
-    {
-      char *inst = key + strlen ("pgsteal_direct_");
-      value_t value  = { .derive = counter };
-      submit_one (inst, "vmpage_action", "steal_direct", value);
+    else if (strncmp("pgalloc_", key, strlen("pgalloc_")) == 0) {
+      char *inst = key + strlen("pgalloc_");
+      value_t value = {.derive = counter};
+      submit_one(inst, "vmpage_action", "alloc", value);
+    } else if (strncmp("pgrefill_", key, strlen("pgrefill_")) == 0) {
+      char *inst = key + strlen("pgrefill_");
+      value_t value = {.derive = counter};
+      submit_one(inst, "vmpage_action", "refill", value);
+    } else if (strncmp("pgsteal_kswapd_", key, strlen("pgsteal_kswapd_")) ==
+               0) {
+      char *inst = key + strlen("pgsteal_kswapd_");
+      value_t value = {.derive = counter};
+      submit_one(inst, "vmpage_action", "steal_kswapd", value);
+    } else if (strncmp("pgsteal_direct_", key, strlen("pgsteal_direct_")) ==
+               0) {
+      char *inst = key + strlen("pgsteal_direct_");
+      value_t value = {.derive = counter};
+      submit_one(inst, "vmpage_action", "steal_direct", value);
     }
     /* For backwards compatibility (somewhen before 4.2.3) */
-    else if (strncmp ("pgsteal_", key, strlen ("pgsteal_")) == 0)
-    {
-      char *inst = key + strlen ("pgsteal_");
-      value_t value  = { .derive = counter };
-      submit_one (inst, "vmpage_action", "steal", value);
-    }
-    else if (strncmp ("pgscan_kswapd_", key, strlen ("pgscan_kswapd_")) == 0)
-    {
-      char *inst = key + strlen ("pgscan_kswapd_");
-      value_t value  = { .derive = counter };
-      submit_one (inst, "vmpage_action", "scan_kswapd", value);
-    }
-    else if (strncmp ("pgscan_direct_", key, strlen ("pgscan_direct_")) == 0)
-    {
-      char *inst = key + strlen ("pgscan_direct_");
-      value_t value  = { .derive = counter };
-      submit_one (inst, "vmpage_action", "scan_direct", value);
+    else if (strncmp("pgsteal_", key, strlen("pgsteal_")) == 0) {
+      char *inst = key + strlen("pgsteal_");
+      value_t value = {.derive = counter};
+      submit_one(inst, "vmpage_action", "steal", value);
+    } else if (strncmp("pgscan_kswapd_", key, strlen("pgscan_kswapd_")) == 0) {
+      char *inst = key + strlen("pgscan_kswapd_");
+      value_t value = {.derive = counter};
+      submit_one(inst, "vmpage_action", "scan_kswapd", value);
+    } else if (strncmp("pgscan_direct_", key, strlen("pgscan_direct_")) == 0) {
+      char *inst = key + strlen("pgscan_direct_");
+      value_t value = {.derive = counter};
+      submit_one(inst, "vmpage_action", "scan_direct", value);
     }
 
     /*
@@ -266,44 +226,35 @@ static int vmem_read (void)
      * number of pages moved to the active or inactive lists and freed, i. e.
      * removed from either list.
      */
-    else if (strcmp ("pgfree", key) == 0)
-    {
-      value_t value  = { .derive = counter };
-      submit_one (NULL, "vmpage_action", "free", value);
-    }
-    else if (strcmp ("pgactivate", key) == 0)
-    {
-      value_t value  = { .derive = counter };
-      submit_one (NULL, "vmpage_action", "activate", value);
-    }
-    else if (strcmp ("pgdeactivate", key) == 0)
-    {
-      value_t value  = { .derive = counter };
-      submit_one (NULL, "vmpage_action", "deactivate", value);
+    else if (strcmp("pgfree", key) == 0) {
+      value_t value = {.derive = counter};
+      submit_one(NULL, "vmpage_action", "free", value);
+    } else if (strcmp("pgactivate", key) == 0) {
+      value_t value = {.derive = counter};
+      submit_one(NULL, "vmpage_action", "activate", value);
+    } else if (strcmp("pgdeactivate", key) == 0) {
+      value_t value = {.derive = counter};
+      submit_one(NULL, "vmpage_action", "deactivate", value);
     }
   } /* while (fgets) */
 
-  fclose (fh);
+  fclose(fh);
   fh = NULL;
 
   if (pgfaultvalid == 0x03)
-    submit_two (NULL, "vmpage_faults", NULL, pgfault, pgmajfault);
+    submit_two(NULL, "vmpage_faults", NULL, pgfault, pgmajfault);
 
   if (pgpgvalid == 0x03)
-    submit_two (NULL, "vmpage_io", "memory", pgpgin, pgpgout);
+    submit_two(NULL, "vmpage_io", "memory", pgpgin, pgpgout);
 
   if (pswpvalid == 0x03)
-    submit_two (NULL, "vmpage_io", "swap", pswpin, pswpout);
+    submit_two(NULL, "vmpage_io", "swap", pswpin, pswpout);
 #endif /* KERNEL_LINUX */
 
-  return (0);
+  return 0;
 } /* int vmem_read */
 
-void module_register (void)
-{
-  plugin_register_config ("vmem", vmem_config,
-      config_keys, config_keys_num);
-  plugin_register_read ("vmem", vmem_read);
+void module_register(void) {
+  plugin_register_config("vmem", vmem_config, config_keys, config_keys_num);
+  plugin_register_read("vmem", vmem_read);
 } /* void module_register */
-
-/* vim: set sw=2 sts=2 ts=8 : */