summaryrefslogtreecommitdiffstats
path: root/linux/LinuxProcessList.h
diff options
context:
space:
mode:
authorRoss Williams <ross@ross-williams.net>2019-07-07 02:37:02 +0000
committerRoss Williams <ross@ross-williams.net>2019-07-07 22:57:15 -0400
commit070fe90461182743fabb029415fc1bc59be14f3f (patch)
treec1ce5424b6676e2b81ae568f748f3eb5dbea09ea /linux/LinuxProcessList.h
parenta93edde1a21e533472b5d443002032260b5bd066 (diff)
ZFS arcstats for Linux
If no pools are imported (ARC size == 0) or the ZFS module is not in the kernel (/proc/spl/kstat/zfs/arcstats does not exist), then the Meter reports "Unavailable".
Diffstat (limited to 'linux/LinuxProcessList.h')
-rw-r--r--linux/LinuxProcessList.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/linux/LinuxProcessList.h b/linux/LinuxProcessList.h
index f30b487d..749231e1 100644
--- a/linux/LinuxProcessList.h
+++ b/linux/LinuxProcessList.h
@@ -67,6 +67,15 @@ typedef struct LinuxProcessList_ {
struct nl_sock *netlink_socket;
int netlink_family;
#endif
+
+ int zfsArcEnabled;
+ unsigned long long int memZfsArc;
+ unsigned long long int zfsArcMax;
+ unsigned long long int zfsArcMFU;
+ unsigned long long int zfsArcMRU;
+ unsigned long long int zfsArcAnon;
+ unsigned long long int zfsArcHeader;
+ unsigned long long int zfsArcOther;
} LinuxProcessList;
#ifndef PROCDIR
@@ -81,6 +90,10 @@ typedef struct LinuxProcessList_ {
#define PROCMEMINFOFILE PROCDIR "/meminfo"
#endif
+#ifndef PROCARCSTATSFILE
+#define PROCARCSTATSFILE PROCDIR "/spl/kstat/zfs/arcstats"
+#endif
+
#ifndef PROCTTYDRIVERSFILE
#define PROCTTYDRIVERSFILE PROCDIR "/tty/drivers"
#endif

© 2014-2024 Faster IT GmbH | imprint | privacy policy