]> git.ipfire.org Git - thirdparty/collectd.git/commitdiff
memory: add laundry and user wired pages (#3962)
authorFrançois Charlier <fcharlier@users.noreply.github.com>
Tue, 15 Feb 2022 12:02:55 +0000 (13:02 +0100)
committerGitHub <noreply@github.com>
Tue, 15 Feb 2022 12:02:55 +0000 (13:02 +0100)
Changelog: memory: report for laundry and user_wire pages on FreeBSD

Add the `vm.stats.vm.v_laundry_count` and
`vm.stats.vm.v_user_wire_count`  which have been present on FreeBSD for
a little while now.

src/memory.c

index 1adbdf80c26e8b76efc1e6f89275dde5e6cfbb21..4f544f0aa38bae0362caf506ab15b4c7725c8804 100644 (file)
@@ -281,13 +281,16 @@ static int memory_read_internal(value_list_t *vl) {
    * vm.stats.vm.v_active_count: 55239
    * vm.stats.vm.v_inactive_count: 113730
    * vm.stats.vm.v_cache_count: 10809
+   * vm.stats.vm.v_user_wire_count: 0
+   * vm.stats.vm.v_laundry_count: 40394
    */
-  const char *sysctl_keys[8] = {
-      "vm.stats.vm.v_page_size",    "vm.stats.vm.v_page_count",
-      "vm.stats.vm.v_free_count",   "vm.stats.vm.v_wire_count",
-      "vm.stats.vm.v_active_count", "vm.stats.vm.v_inactive_count",
-      "vm.stats.vm.v_cache_count",  NULL};
-  double sysctl_vals[8];
+  const char *sysctl_keys[10] = {
+      "vm.stats.vm.v_page_size",     "vm.stats.vm.v_page_count",
+      "vm.stats.vm.v_free_count",    "vm.stats.vm.v_wire_count",
+      "vm.stats.vm.v_active_count",  "vm.stats.vm.v_inactive_count",
+      "vm.stats.vm.v_cache_count",   "vm.stats.vm.v_user_wire_count",
+      "vm.stats.vm.v_laundry_count", NULL};
+  double sysctl_vals[10];
 
   for (int i = 0; sysctl_keys[i] != NULL; i++) {
     int value;
@@ -310,7 +313,8 @@ static int memory_read_internal(value_list_t *vl) {
   MEMORY_SUBMIT("free", (gauge_t)sysctl_vals[2], "wired",
                 (gauge_t)sysctl_vals[3], "active", (gauge_t)sysctl_vals[4],
                 "inactive", (gauge_t)sysctl_vals[5], "cache",
-                (gauge_t)sysctl_vals[6]);
+                (gauge_t)sysctl_vals[6], "user_wire", (gauge_t)sysctl_vals[7],
+                "laundry", (gauge_t)sysctl_vals[8]);
 
 #endif /* HAVE_SYSCTL && KERNEL_NETBSD */
   /* #endif HAVE_SYSCTLBYNAME */