diff options
author | Nathan Scott <nathans@redhat.com> | 2023-05-02 16:56:18 +1000 |
---|---|---|
committer | Nathan Scott <nathans@redhat.com> | 2023-05-08 13:06:38 +1000 |
commit | 72235d8e098d9d79029dca65122605741e1aafad (patch) | |
tree | 96593b8bd9dc95dc5ab321bd363d36351cbd0a99 /solaris/SolarisMachine.h | |
parent | 0bdade1b6cb40c5bd374a93ac0489058a7421bb5 (diff) |
Adapt platform code for the new Machine base class
Move host-centric data to new derived <Platform>Machine classes,
separate from process-list-centric data.
Diffstat (limited to 'solaris/SolarisMachine.h')
-rw-r--r-- | solaris/SolarisMachine.h | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/solaris/SolarisMachine.h b/solaris/SolarisMachine.h new file mode 100644 index 00000000..da091c6e --- /dev/null +++ b/solaris/SolarisMachine.h @@ -0,0 +1,59 @@ +#ifndef HEADER_SolarisMachine +#define HEADER_SolarisMachine +/* +htop - SolarisMachine.h +(C) 2014 Hisham H. Muhammad +(C) 2017,2018 Guy M. Broome +Released under the GNU GPLv2+, see the COPYING file +in the source distribution for its full text. +*/ + +#include "config.h" // IWYU pragma: keep + +#include <kstat.h> +#include <stdbool.h> +#include <stdint.h> +#include <sys/param.h> +#include <sys/uio.h> +#include <sys/resource.h> +#include <sys/sysconf.h> +#include <sys/sysinfo.h> +#include <sys/swap.h> + +#include "Hashtable.h" +#include "UsersTable.h" + +#include "zfs/ZfsArcStats.h" + + +#define ZONE_ERRMSGLEN 1024 +extern char zone_errmsg[ZONE_ERRMSGLEN]; + +typedef struct CPUData_ { + double userPercent; + double nicePercent; + double systemPercent; + double irqPercent; + double idlePercent; + double systemAllPercent; + double frequency; + uint64_t luser; + uint64_t lkrnl; + uint64_t lintr; + uint64_t lidle; + bool online; +} CPUData; + +typedef struct SolarisMachine_ { + Machine super; + + kstat_ctl_t* kd; + CPUData* cpus; + + int pageSize; + int pageSizeKB; + + ZfsArcStats zfs; +} SolarisMachine; + +#endif |