vmem plugin: Fix pgsteal for newer Linux kernels.
authorJakub Jankowski <shastah>
Thu, 15 Oct 2015 23:30:33 +0000 (23:30 +0000)
committerFlorian Forster <octo@collectd.org>
Wed, 2 Dec 2015 20:38:46 +0000 (21:38 +0100)
Fixes: #1307

src/vmem.c

index b8febce..b1c02a6 100644 (file)
@@ -222,6 +222,19 @@ static int vmem_read (void)
       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_");