library: refactored some header file items and origins
This commit is intended as a refinement of the patches mentioned below, where origins/sources of newlib items were added to the header files for user documentation. However, if those additions are to be truly effective, along with kernel documentation (where available), the following prerequisites must also have been satisfied: . our identifiers closely align with linux field names . our derived items are documented or self-documenting Satisfying those prerequisites prompted this patch and for these changes, kernel sources were emphasized over available documentation (shame on me, it should always have been so). And, while some 'new' fields were found to be conditional, they were included unconditionally. These changes appear more extensive than they actually need be since I have attempted to enforce some spacing conventions. So, I've summarize the significant things in the sections that follow. For a proper perspective, use: 'git diff --ignore-space-change' (good as alias). ___________________________________________ <PIDS> api This api is unique in that there exists many different file/directory origins subordinate to /proc/<pid>. And our item identifiers are sometimes coerced so as to be able to group related or similar enumerators together. So, users needed more help relating our identifiers to an actual documented field. Thus, we will now also add the field names as with 'stat: delayacct_blkio_ticks'. Each item ending with a '_C' now consistently includes both the parent's count/time plus waited for children. That 'RTPRIO' guy was renamed/relocated as PRIORITY_RT since its original name is an implementation artifact. ___________________________________________ <STAT> api The only api change was to correct a typo ('dervied'). _________________________________________ <VMSTAT> api Even ignoring white space, this interface received the largest number of changes. Mostly, this was because of deficiencies in the proc(5) documentation. Recall that this documentation already sorely lacks any substance. Usually, just kernel releases are noted, not contents. When compared to kernel source, that proc(5) contained many non-existent fields and also omitted many others. ________________________________________ <MEMINFO> api Sadly, with this api many of the changes were simply a correction of some earlier 'human error' where several fields where hashed then tracked but never represented with an item enumerator in this meminfo.h header file. _______________________________________ <SLABINFO> api The 'SLABS' (summary) & 'SLABNODE' items were reversed since the former are derived from the separate caches. More significantly, those 'SLABNODE' guys were renamed to 'SLAB' since they concern individual caches and the concept of 'nodes' is really an implementation detail. Also, several enumerators were changed to more closely agree with official slabinfo(5) documentation referred to in what we're treating as a base document: proc(5). Lastly, while those 'SLABS' items are solely a product of our library and not represented in slabinfo(5), the names attempt to parallel those found as 'SLAB' items. ______________________________________ <DISKSTATS> api One enumeration identifier was changed so as to better reflect its relationship to that actual documentation: 'Documentation/iostats.txt', as referenced in proc(5). Reference(s): . 12/2018, item origins added (and commit msg history) commit96d59cbf46
. 01/2019, <stat> origins tweaked commit201e816b26
Signed-off-by: Jim Warner <james.warner@comcast.net>
This commit is contained in:
parent
47af06b52b
commit
6671a3a8b7
@ -138,7 +138,7 @@ REG_set(DISKSTATS_WRITES_MERGED, ul_int, writes_merged)
|
||||
REG_set(DISKSTATS_WRITE_SECTORS, ul_int, write_sectors)
|
||||
REG_set(DISKSTATS_WRITE_TIME, ul_int, write_time)
|
||||
REG_set(DISKSTATS_IO_TIME, ul_int, io_time)
|
||||
REG_set(DISKSTATS_IO_WTIME, ul_int, io_wtime)
|
||||
REG_set(DISKSTATS_WEIGHTED_TIME, ul_int, io_wtime)
|
||||
|
||||
REG_set(DISKSTATS_IO_INPROGRESS, s_int, io_inprogress)
|
||||
|
||||
@ -151,7 +151,7 @@ HST_set(DISKSTATS_DELTA_WRITES_MERGED, s_int, writes_merged)
|
||||
HST_set(DISKSTATS_DELTA_WRITE_SECTORS, s_int, write_sectors)
|
||||
HST_set(DISKSTATS_DELTA_WRITE_TIME, s_int, write_time)
|
||||
HST_set(DISKSTATS_DELTA_IO_TIME, s_int, io_time)
|
||||
HST_set(DISKSTATS_DELTA_IO_WTIME, s_int, io_wtime)
|
||||
HST_set(DISKSTATS_DELTA_WEIGHTED_TIME, s_int, io_wtime)
|
||||
|
||||
#undef setDECL
|
||||
#undef DEV_set
|
||||
@ -237,7 +237,7 @@ static struct {
|
||||
{ RS(DISKSTATS_WRITE_SECTORS), QS(ul_int), TS(ul_int) },
|
||||
{ RS(DISKSTATS_WRITE_TIME), QS(ul_int), TS(ul_int) },
|
||||
{ RS(DISKSTATS_IO_TIME), QS(ul_int), TS(ul_int) },
|
||||
{ RS(DISKSTATS_IO_WTIME), QS(ul_int), TS(ul_int) },
|
||||
{ RS(DISKSTATS_WEIGHTED_TIME), QS(ul_int), TS(ul_int) },
|
||||
|
||||
{ RS(DISKSTATS_IO_INPROGRESS), QS(s_int), TS(s_int) },
|
||||
|
||||
@ -250,7 +250,7 @@ static struct {
|
||||
{ RS(DISKSTATS_DELTA_WRITE_SECTORS), QS(s_int), TS(s_int) },
|
||||
{ RS(DISKSTATS_DELTA_WRITE_TIME), QS(s_int), TS(s_int) },
|
||||
{ RS(DISKSTATS_DELTA_IO_TIME), QS(s_int), TS(s_int) },
|
||||
{ RS(DISKSTATS_DELTA_IO_WTIME), QS(s_int), TS(s_int) },
|
||||
{ RS(DISKSTATS_DELTA_WEIGHTED_TIME), QS(s_int), TS(s_int) },
|
||||
|
||||
// dummy entry corresponding to DISKSTATS_logical_end ...
|
||||
{ NULL, NULL, NULL }
|
||||
@ -258,7 +258,7 @@ static struct {
|
||||
|
||||
/* please note,
|
||||
* this enum MUST be 1 greater than the highest value of any enum */
|
||||
enum diskstats_item DISKSTATS_logical_end = DISKSTATS_DELTA_IO_WTIME + 1;
|
||||
enum diskstats_item DISKSTATS_logical_end = DISKSTATS_DELTA_WEIGHTED_TIME + 1;
|
||||
|
||||
#undef setNAME
|
||||
#undef srtNAME
|
||||
|
@ -32,34 +32,34 @@ enum diskstats_item {
|
||||
DISKSTATS_extra, // ( reset to zero )
|
||||
// returns origin, see proc(5)
|
||||
// ------- -------------------
|
||||
DISKSTATS_NAME, // str /proc/diskstats
|
||||
DISKSTATS_TYPE, // s_int "
|
||||
DISKSTATS_MAJOR, // s_int "
|
||||
DISKSTATS_MINOR, // s_int "
|
||||
DISKSTATS_NAME, // str /proc/diskstats
|
||||
DISKSTATS_TYPE, // s_int "
|
||||
DISKSTATS_MAJOR, // s_int "
|
||||
DISKSTATS_MINOR, // s_int "
|
||||
|
||||
DISKSTATS_READS, // ul_int "
|
||||
DISKSTATS_READS_MERGED, // ul_int "
|
||||
DISKSTATS_READ_SECTORS, // ul_int "
|
||||
DISKSTATS_READ_TIME, // ul_int "
|
||||
DISKSTATS_WRITES, // ul_int "
|
||||
DISKSTATS_WRITES_MERGED, // ul_int "
|
||||
DISKSTATS_WRITE_SECTORS, // ul_int "
|
||||
DISKSTATS_WRITE_TIME, // ul_int "
|
||||
DISKSTATS_IO_TIME, // ul_int "
|
||||
DISKSTATS_IO_WTIME, // ul_int "
|
||||
DISKSTATS_READS, // ul_int "
|
||||
DISKSTATS_READS_MERGED, // ul_int "
|
||||
DISKSTATS_READ_SECTORS, // ul_int "
|
||||
DISKSTATS_READ_TIME, // ul_int "
|
||||
DISKSTATS_WRITES, // ul_int "
|
||||
DISKSTATS_WRITES_MERGED, // ul_int "
|
||||
DISKSTATS_WRITE_SECTORS, // ul_int "
|
||||
DISKSTATS_WRITE_TIME, // ul_int "
|
||||
DISKSTATS_IO_TIME, // ul_int "
|
||||
DISKSTATS_WEIGHTED_TIME, // ul_int "
|
||||
|
||||
DISKSTATS_IO_INPROGRESS, // s_int "
|
||||
DISKSTATS_IO_INPROGRESS, // s_int "
|
||||
|
||||
DISKSTATS_DELTA_READS, // s_int dervied from above
|
||||
DISKSTATS_DELTA_READS_MERGED, // s_int "
|
||||
DISKSTATS_DELTA_READ_SECTORS, // s_int "
|
||||
DISKSTATS_DELTA_READ_TIME, // s_int "
|
||||
DISKSTATS_DELTA_WRITES, // s_int "
|
||||
DISKSTATS_DELTA_WRITES_MERGED, // s_int "
|
||||
DISKSTATS_DELTA_WRITE_SECTORS, // s_int "
|
||||
DISKSTATS_DELTA_WRITE_TIME, // s_int "
|
||||
DISKSTATS_DELTA_IO_TIME, // s_int "
|
||||
DISKSTATS_DELTA_IO_WTIME // s_int "
|
||||
DISKSTATS_DELTA_READS, // s_int derived from above
|
||||
DISKSTATS_DELTA_READS_MERGED, // s_int "
|
||||
DISKSTATS_DELTA_READ_SECTORS, // s_int "
|
||||
DISKSTATS_DELTA_READ_TIME, // s_int "
|
||||
DISKSTATS_DELTA_WRITES, // s_int "
|
||||
DISKSTATS_DELTA_WRITES_MERGED, // s_int "
|
||||
DISKSTATS_DELTA_WRITE_SECTORS, // s_int "
|
||||
DISKSTATS_DELTA_WRITE_TIME, // s_int "
|
||||
DISKSTATS_DELTA_IO_TIME, // s_int "
|
||||
DISKSTATS_DELTA_WEIGHTED_TIME // s_int "
|
||||
};
|
||||
|
||||
enum diskstats_sort_order {
|
||||
|
102
proc/meminfo.c
102
proc/meminfo.c
@ -48,9 +48,10 @@ struct meminfo_data {
|
||||
unsigned long CmaTotal;
|
||||
unsigned long CommitLimit;
|
||||
unsigned long Committed_AS;
|
||||
unsigned long DirectMap1G; // man 5 proc: 'to be documented'
|
||||
unsigned long DirectMap2M; // man 5 proc: 'to be documented'
|
||||
unsigned long DirectMap4k; // man 5 proc: 'to be documented'
|
||||
unsigned long DirectMap1G;
|
||||
unsigned long DirectMap2M;
|
||||
unsigned long DirectMap4M;
|
||||
unsigned long DirectMap4k;
|
||||
unsigned long Dirty;
|
||||
unsigned long HardwareCorrupted; // man 5 proc: 'to be documented'
|
||||
unsigned long HighFree;
|
||||
@ -60,6 +61,7 @@ struct meminfo_data {
|
||||
unsigned long HugePages_Surp;
|
||||
unsigned long HugePages_Total;
|
||||
unsigned long Hugepagesize;
|
||||
unsigned long Hugetlb;
|
||||
unsigned long Inactive;
|
||||
unsigned long Inactive_anon; // as: Inactive(anon): man 5 proc: 'to be documented'
|
||||
unsigned long Inactive_file; // as: Inactive(file): man 5 proc: 'to be documented'
|
||||
@ -75,6 +77,7 @@ struct meminfo_data {
|
||||
unsigned long MmapCopy; // man 5 proc: 'to be documented'
|
||||
unsigned long NFS_Unstable;
|
||||
unsigned long PageTables;
|
||||
unsigned long Percpu;
|
||||
unsigned long Quicklists; // man 5 proc: 'to be documented'
|
||||
unsigned long SReclaimable;
|
||||
unsigned long SUnreclaim;
|
||||
@ -146,11 +149,21 @@ MEM_set(MEM_BOUNCE, ul_int, Bounce)
|
||||
MEM_set(MEM_BUFFERS, ul_int, Buffers)
|
||||
MEM_set(MEM_CACHED, ul_int, Cached)
|
||||
MEM_set(MEM_CACHED_ALL, ul_int, derived_mem_cached)
|
||||
MEM_set(MEM_COMMIT_LIMIT, ul_int, CommitLimit)
|
||||
MEM_set(MEM_CMA_FREE, ul_int, CmaFree)
|
||||
MEM_set(MEM_CMA_TOTAL, ul_int, CmaTotal)
|
||||
MEM_set(MEM_COMMITTED_AS, ul_int, Committed_AS)
|
||||
MEM_set(MEM_HARD_CORRUPTED, ul_int, HardwareCorrupted)
|
||||
MEM_set(MEM_COMMIT_LIMIT, ul_int, CommitLimit)
|
||||
MEM_set(MEM_DIRECTMAP_1G, ul_int, DirectMap1G)
|
||||
MEM_set(MEM_DIRECTMAP_2M, ul_int, DirectMap2M)
|
||||
MEM_set(MEM_DIRECTMAP_4K, ul_int, DirectMap4k)
|
||||
MEM_set(MEM_DIRECTMAP_4M, ul_int, DirectMap4M)
|
||||
MEM_set(MEM_DIRTY, ul_int, Dirty)
|
||||
MEM_set(MEM_FREE, ul_int, MemFree)
|
||||
MEM_set(MEM_HARD_CORRUPTED, ul_int, HardwareCorrupted)
|
||||
MEM_set(MEM_HIGH_FREE, ul_int, HighFree)
|
||||
MEM_set(MEM_HIGH_TOTAL, ul_int, HighTotal)
|
||||
MEM_set(MEM_HIGH_USED, ul_int, derived_mem_hi_used)
|
||||
MEM_set(MEM_HUGETBL, ul_int, Hugetlb)
|
||||
MEM_set(MEM_HUGE_ANON, ul_int, AnonHugePages)
|
||||
MEM_set(MEM_HUGE_FREE, ul_int, HugePages_Free)
|
||||
MEM_set(MEM_HUGE_RSVD, ul_int, HugePages_Rsvd)
|
||||
@ -163,10 +176,14 @@ MEM_set(MEM_INACTIVE_FILE, ul_int, Inactive_file)
|
||||
MEM_set(MEM_KERNEL_RECLAIM, ul_int, KReclaimable)
|
||||
MEM_set(MEM_KERNEL_STACK, ul_int, KernelStack)
|
||||
MEM_set(MEM_LOCKED, ul_int, Mlocked)
|
||||
MEM_set(MEM_LOW_FREE, ul_int, LowFree)
|
||||
MEM_set(MEM_LOW_TOTAL, ul_int, LowTotal)
|
||||
MEM_set(MEM_LOW_USED, ul_int, derived_mem_lo_used)
|
||||
MEM_set(MEM_MAPPED, ul_int, Mapped)
|
||||
MEM_set(MEM_MAP_COPY, ul_int, MmapCopy)
|
||||
MEM_set(MEM_NFS_UNSTABLE, ul_int, NFS_Unstable)
|
||||
MEM_set(MEM_PAGE_TABLES, ul_int, PageTables)
|
||||
MEM_set(MEM_PER_CPU, ul_int, Percpu)
|
||||
MEM_set(MEM_QUICKLISTS, ul_int, Quicklists)
|
||||
MEM_set(MEM_SHARED, ul_int, Shmem)
|
||||
MEM_set(MEM_SHMEM_HUGE, ul_int, ShmemHugePages)
|
||||
@ -192,11 +209,21 @@ HST_set(DELTA_BOUNCE, s_int, Bounce)
|
||||
HST_set(DELTA_BUFFERS, s_int, Buffers)
|
||||
HST_set(DELTA_CACHED, s_int, Cached)
|
||||
HST_set(DELTA_CACHED_ALL, s_int, derived_mem_cached)
|
||||
HST_set(DELTA_COMMIT_LIMIT, s_int, CommitLimit)
|
||||
HST_set(DELTA_CMA_FREE, s_int, CmaFree)
|
||||
HST_set(DELTA_CMA_TOTAL, s_int, CmaTotal)
|
||||
HST_set(DELTA_COMMITTED_AS, s_int, Committed_AS)
|
||||
HST_set(DELTA_HARD_CORRUPTED, s_int, HardwareCorrupted)
|
||||
HST_set(DELTA_COMMIT_LIMIT, s_int, CommitLimit)
|
||||
HST_set(DELTA_DIRECTMAP_1G, s_int, DirectMap1G)
|
||||
HST_set(DELTA_DIRECTMAP_2M, s_int, DirectMap2M)
|
||||
HST_set(DELTA_DIRECTMAP_4K, s_int, DirectMap4k)
|
||||
HST_set(DELTA_DIRECTMAP_4M, s_int, DirectMap4M)
|
||||
HST_set(DELTA_DIRTY, s_int, Dirty)
|
||||
HST_set(DELTA_FREE, s_int, MemFree)
|
||||
HST_set(DELTA_HARD_CORRUPTED, s_int, HardwareCorrupted)
|
||||
HST_set(DELTA_HIGH_FREE, s_int, HighFree)
|
||||
HST_set(DELTA_HIGH_TOTAL, s_int, HighTotal)
|
||||
HST_set(DELTA_HIGH_USED, s_int, derived_mem_hi_used)
|
||||
HST_set(DELTA_HUGETBL, s_int, Hugetlb)
|
||||
HST_set(DELTA_HUGE_ANON, s_int, AnonHugePages)
|
||||
HST_set(DELTA_HUGE_FREE, s_int, HugePages_Free)
|
||||
HST_set(DELTA_HUGE_RSVD, s_int, HugePages_Rsvd)
|
||||
@ -209,10 +236,14 @@ HST_set(DELTA_INACTIVE_FILE, s_int, Inactive_file)
|
||||
HST_set(DELTA_KERNEL_RECLAIM, s_int, KReclaimable)
|
||||
HST_set(DELTA_KERNEL_STACK, s_int, KernelStack)
|
||||
HST_set(DELTA_LOCKED, s_int, Mlocked)
|
||||
HST_set(DELTA_LOW_FREE, s_int, LowFree)
|
||||
HST_set(DELTA_LOW_TOTAL, s_int, LowTotal)
|
||||
HST_set(DELTA_LOW_USED, s_int, derived_mem_lo_used)
|
||||
HST_set(DELTA_MAPPED, s_int, Mapped)
|
||||
HST_set(DELTA_MAP_COPY, s_int, MmapCopy)
|
||||
HST_set(DELTA_NFS_UNSTABLE, s_int, NFS_Unstable)
|
||||
HST_set(DELTA_PAGE_TABLES, s_int, PageTables)
|
||||
HST_set(DELTA_PER_CPU, s_int, Percpu)
|
||||
HST_set(DELTA_QUICKLISTS, s_int, Quicklists)
|
||||
HST_set(DELTA_SHARED, s_int, Shmem)
|
||||
HST_set(DELTA_SHMEM_HUGE, s_int, ShmemHugePages)
|
||||
@ -229,14 +260,6 @@ HST_set(DELTA_VM_ALLOC_USED, s_int, VmallocUsed)
|
||||
HST_set(DELTA_WRITEBACK, s_int, Writeback)
|
||||
HST_set(DELTA_WRITEBACK_TMP, s_int, WritebackTmp)
|
||||
|
||||
MEM_set(MEMHI_FREE, ul_int, HighFree)
|
||||
MEM_set(MEMHI_TOTAL, ul_int, HighTotal)
|
||||
MEM_set(MEMHI_USED, ul_int, derived_mem_hi_used)
|
||||
|
||||
MEM_set(MEMLO_FREE, ul_int, LowFree)
|
||||
MEM_set(MEMLO_TOTAL, ul_int, LowTotal)
|
||||
MEM_set(MEMLO_USED, ul_int, derived_mem_lo_used)
|
||||
|
||||
MEM_set(SWAP_CACHED, ul_int, SwapCached)
|
||||
MEM_set(SWAP_FREE, ul_int, SwapFree)
|
||||
MEM_set(SWAP_TOTAL, ul_int, SwapTotal)
|
||||
@ -282,11 +305,21 @@ static struct {
|
||||
{ RS(MEM_BUFFERS), TS(ul_int) },
|
||||
{ RS(MEM_CACHED), TS(ul_int) },
|
||||
{ RS(MEM_CACHED_ALL), TS(ul_int) },
|
||||
{ RS(MEM_COMMIT_LIMIT), TS(ul_int) },
|
||||
{ RS(MEM_CMA_FREE), TS(ul_int) },
|
||||
{ RS(MEM_CMA_TOTAL), TS(ul_int) },
|
||||
{ RS(MEM_COMMITTED_AS), TS(ul_int) },
|
||||
{ RS(MEM_HARD_CORRUPTED), TS(ul_int) },
|
||||
{ RS(MEM_COMMIT_LIMIT), TS(ul_int) },
|
||||
{ RS(MEM_DIRECTMAP_1G), TS(ul_int) },
|
||||
{ RS(MEM_DIRECTMAP_2M), TS(ul_int) },
|
||||
{ RS(MEM_DIRECTMAP_4K), TS(ul_int) },
|
||||
{ RS(MEM_DIRECTMAP_4M), TS(ul_int) },
|
||||
{ RS(MEM_DIRTY), TS(ul_int) },
|
||||
{ RS(MEM_FREE), TS(ul_int) },
|
||||
{ RS(MEM_HARD_CORRUPTED), TS(ul_int) },
|
||||
{ RS(MEM_HIGH_FREE), TS(ul_int) },
|
||||
{ RS(MEM_HIGH_TOTAL), TS(ul_int) },
|
||||
{ RS(MEM_HIGH_USED), TS(ul_int) },
|
||||
{ RS(MEM_HUGETBL), TS(ul_int) },
|
||||
{ RS(MEM_HUGE_ANON), TS(ul_int) },
|
||||
{ RS(MEM_HUGE_FREE), TS(ul_int) },
|
||||
{ RS(MEM_HUGE_RSVD), TS(ul_int) },
|
||||
@ -299,10 +332,14 @@ static struct {
|
||||
{ RS(MEM_KERNEL_RECLAIM), TS(ul_int) },
|
||||
{ RS(MEM_KERNEL_STACK), TS(ul_int) },
|
||||
{ RS(MEM_LOCKED), TS(ul_int) },
|
||||
{ RS(MEM_LOW_FREE), TS(ul_int) },
|
||||
{ RS(MEM_LOW_TOTAL), TS(ul_int) },
|
||||
{ RS(MEM_LOW_USED), TS(ul_int) },
|
||||
{ RS(MEM_MAPPED), TS(ul_int) },
|
||||
{ RS(MEM_MAP_COPY), TS(ul_int) },
|
||||
{ RS(MEM_NFS_UNSTABLE), TS(ul_int) },
|
||||
{ RS(MEM_PAGE_TABLES), TS(ul_int) },
|
||||
{ RS(MEM_PER_CPU), TS(ul_int) },
|
||||
{ RS(MEM_QUICKLISTS), TS(ul_int) },
|
||||
{ RS(MEM_SHARED), TS(ul_int) },
|
||||
{ RS(MEM_SHMEM_HUGE), TS(ul_int) },
|
||||
@ -328,11 +365,21 @@ static struct {
|
||||
{ RS(DELTA_BUFFERS), TS(s_int) },
|
||||
{ RS(DELTA_CACHED), TS(s_int) },
|
||||
{ RS(DELTA_CACHED_ALL), TS(s_int) },
|
||||
{ RS(DELTA_COMMIT_LIMIT), TS(s_int) },
|
||||
{ RS(DELTA_CMA_FREE), TS(s_int) },
|
||||
{ RS(DELTA_CMA_TOTAL), TS(s_int) },
|
||||
{ RS(DELTA_COMMITTED_AS), TS(s_int) },
|
||||
{ RS(DELTA_HARD_CORRUPTED), TS(s_int) },
|
||||
{ RS(DELTA_COMMIT_LIMIT), TS(s_int) },
|
||||
{ RS(DELTA_DIRECTMAP_1G), TS(s_int) },
|
||||
{ RS(DELTA_DIRECTMAP_2M), TS(s_int) },
|
||||
{ RS(DELTA_DIRECTMAP_4K), TS(s_int) },
|
||||
{ RS(DELTA_DIRECTMAP_4M), TS(s_int) },
|
||||
{ RS(DELTA_DIRTY), TS(s_int) },
|
||||
{ RS(DELTA_FREE), TS(s_int) },
|
||||
{ RS(DELTA_HARD_CORRUPTED), TS(s_int) },
|
||||
{ RS(DELTA_HIGH_FREE), TS(s_int) },
|
||||
{ RS(DELTA_HIGH_TOTAL), TS(s_int) },
|
||||
{ RS(DELTA_HIGH_USED), TS(s_int) },
|
||||
{ RS(DELTA_HUGETBL), TS(s_int) },
|
||||
{ RS(DELTA_HUGE_ANON), TS(s_int) },
|
||||
{ RS(DELTA_HUGE_FREE), TS(s_int) },
|
||||
{ RS(DELTA_HUGE_RSVD), TS(s_int) },
|
||||
@ -345,10 +392,14 @@ static struct {
|
||||
{ RS(DELTA_KERNEL_RECLAIM), TS(s_int) },
|
||||
{ RS(DELTA_KERNEL_STACK), TS(s_int) },
|
||||
{ RS(DELTA_LOCKED), TS(s_int) },
|
||||
{ RS(DELTA_LOW_FREE), TS(s_int) },
|
||||
{ RS(DELTA_LOW_TOTAL), TS(s_int) },
|
||||
{ RS(DELTA_LOW_USED), TS(s_int) },
|
||||
{ RS(DELTA_MAPPED), TS(s_int) },
|
||||
{ RS(DELTA_MAP_COPY), TS(s_int) },
|
||||
{ RS(DELTA_NFS_UNSTABLE), TS(s_int) },
|
||||
{ RS(DELTA_PAGE_TABLES), TS(s_int) },
|
||||
{ RS(DELTA_PER_CPU), TS(s_int) },
|
||||
{ RS(DELTA_QUICKLISTS), TS(s_int) },
|
||||
{ RS(DELTA_SHARED), TS(s_int) },
|
||||
{ RS(DELTA_SHMEM_HUGE), TS(s_int) },
|
||||
@ -365,14 +416,6 @@ static struct {
|
||||
{ RS(DELTA_WRITEBACK), TS(s_int) },
|
||||
{ RS(DELTA_WRITEBACK_TMP), TS(s_int) },
|
||||
|
||||
{ RS(MEMHI_FREE), TS(ul_int) },
|
||||
{ RS(MEMHI_TOTAL), TS(ul_int) },
|
||||
{ RS(MEMHI_USED), TS(ul_int) },
|
||||
|
||||
{ RS(MEMLO_FREE), TS(ul_int) },
|
||||
{ RS(MEMLO_TOTAL), TS(ul_int) },
|
||||
{ RS(MEMLO_USED), TS(ul_int) },
|
||||
|
||||
{ RS(SWAP_CACHED), TS(ul_int) },
|
||||
{ RS(SWAP_FREE), TS(ul_int) },
|
||||
{ RS(SWAP_TOTAL), TS(ul_int) },
|
||||
@ -530,6 +573,7 @@ static int meminfo_make_hash_failed (
|
||||
htVAL(Committed_AS)
|
||||
htVAL(DirectMap1G)
|
||||
htVAL(DirectMap2M)
|
||||
htVAL(DirectMap4M)
|
||||
htVAL(DirectMap4k)
|
||||
htVAL(Dirty)
|
||||
htVAL(HardwareCorrupted)
|
||||
@ -540,6 +584,7 @@ static int meminfo_make_hash_failed (
|
||||
htVAL(HugePages_Surp)
|
||||
htVAL(HugePages_Total)
|
||||
htVAL(Hugepagesize)
|
||||
htVAL(Hugetlb)
|
||||
htVAL(Inactive)
|
||||
htXTRA(Inactive(anon), Inactive_anon)
|
||||
htXTRA(Inactive(file), Inactive_file)
|
||||
@ -548,13 +593,14 @@ static int meminfo_make_hash_failed (
|
||||
htVAL(LowFree)
|
||||
htVAL(LowTotal)
|
||||
htVAL(Mapped)
|
||||
htVAL(MmapCopy)
|
||||
htVAL(MemAvailable)
|
||||
htVAL(MemFree)
|
||||
htVAL(MemTotal)
|
||||
htVAL(Mlocked)
|
||||
htVAL(MmapCopy)
|
||||
htVAL(NFS_Unstable)
|
||||
htVAL(PageTables)
|
||||
htVAL(Percpu)
|
||||
htVAL(Quicklists)
|
||||
htVAL(SReclaimable)
|
||||
htVAL(SUnreclaim)
|
||||
|
232
proc/meminfo.h
232
proc/meminfo.h
@ -31,115 +31,135 @@ enum meminfo_item {
|
||||
*/
|
||||
// returns origin, see proc(5)
|
||||
// ------- -------------------
|
||||
MEMINFO_MEM_ACTIVE, // ul_int /proc/meminfo
|
||||
MEMINFO_MEM_ACTIVE_ANON, // ul_int "
|
||||
MEMINFO_MEM_ACTIVE_FILE, // ul_int "
|
||||
MEMINFO_MEM_ANON, // ul_int "
|
||||
MEMINFO_MEM_AVAILABLE, // ul_int "
|
||||
MEMINFO_MEM_BOUNCE, // ul_int "
|
||||
MEMINFO_MEM_BUFFERS, // ul_int "
|
||||
MEMINFO_MEM_CACHED, // ul_int "
|
||||
MEMINFO_MEM_CACHED_ALL, // ul_int "
|
||||
MEMINFO_MEM_COMMIT_LIMIT, // ul_int "
|
||||
MEMINFO_MEM_COMMITTED_AS, // ul_int "
|
||||
MEMINFO_MEM_HARD_CORRUPTED, // ul_int "
|
||||
MEMINFO_MEM_DIRTY, // ul_int "
|
||||
MEMINFO_MEM_FREE, // ul_int "
|
||||
MEMINFO_MEM_HUGE_ANON, // ul_int "
|
||||
MEMINFO_MEM_HUGE_FREE, // ul_int "
|
||||
MEMINFO_MEM_HUGE_RSVD, // ul_int "
|
||||
MEMINFO_MEM_HUGE_SIZE, // ul_int "
|
||||
MEMINFO_MEM_HUGE_SURPLUS, // ul_int "
|
||||
MEMINFO_MEM_HUGE_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_INACTIVE, // ul_int "
|
||||
MEMINFO_MEM_INACTIVE_ANON, // ul_int "
|
||||
MEMINFO_MEM_INACTIVE_FILE, // ul_int "
|
||||
MEMINFO_MEM_KERNEL_RECLAIM, // ul_int "
|
||||
MEMINFO_MEM_KERNEL_STACK, // ul_int "
|
||||
MEMINFO_MEM_LOCKED, // ul_int "
|
||||
MEMINFO_MEM_MAPPED, // ul_int "
|
||||
MEMINFO_MEM_MAP_COPY, // ul_int "
|
||||
MEMINFO_MEM_NFS_UNSTABLE, // ul_int "
|
||||
MEMINFO_MEM_PAGE_TABLES, // ul_int "
|
||||
MEMINFO_MEM_QUICKLISTS, // ul_int "
|
||||
MEMINFO_MEM_SHARED, // ul_int "
|
||||
MEMINFO_MEM_SHMEM_HUGE, // ul_int "
|
||||
MEMINFO_MEM_SHMEM_HUGE_MAP, // ul_int "
|
||||
MEMINFO_MEM_SLAB, // ul_int "
|
||||
MEMINFO_MEM_SLAB_RECLAIM, // ul_int "
|
||||
MEMINFO_MEM_SLAB_UNRECLAIM, // ul_int "
|
||||
MEMINFO_MEM_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_UNEVICTABLE, // ul_int "
|
||||
MEMINFO_MEM_USED, // ul_int "
|
||||
MEMINFO_MEM_VM_ALLOC_CHUNK, // ul_int "
|
||||
MEMINFO_MEM_VM_ALLOC_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_VM_ALLOC_USED, // ul_int "
|
||||
MEMINFO_MEM_WRITEBACK, // ul_int "
|
||||
MEMINFO_MEM_WRITEBACK_TMP, // ul_int "
|
||||
MEMINFO_MEM_ACTIVE, // ul_int /proc/meminfo
|
||||
MEMINFO_MEM_ACTIVE_ANON, // ul_int "
|
||||
MEMINFO_MEM_ACTIVE_FILE, // ul_int "
|
||||
MEMINFO_MEM_ANON, // ul_int "
|
||||
MEMINFO_MEM_AVAILABLE, // ul_int "
|
||||
MEMINFO_MEM_BOUNCE, // ul_int "
|
||||
MEMINFO_MEM_BUFFERS, // ul_int "
|
||||
MEMINFO_MEM_CACHED, // ul_int "
|
||||
MEMINFO_MEM_CACHED_ALL, // ul_int derived from MEM_CACHED + MEM_SLAB_RECLAIM
|
||||
MEMINFO_MEM_CMA_FREE, // ul_int /proc/meminfo
|
||||
MEMINFO_MEM_CMA_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_COMMITTED_AS, // ul_int "
|
||||
MEMINFO_MEM_COMMIT_LIMIT, // ul_int "
|
||||
MEMINFO_MEM_DIRECTMAP_1G, // ul_int "
|
||||
MEMINFO_MEM_DIRECTMAP_2M, // ul_int "
|
||||
MEMINFO_MEM_DIRECTMAP_4K, // ul_int "
|
||||
MEMINFO_MEM_DIRECTMAP_4M, // ul_int "
|
||||
MEMINFO_MEM_DIRTY, // ul_int "
|
||||
MEMINFO_MEM_FREE, // ul_int "
|
||||
MEMINFO_MEM_HARD_CORRUPTED, // ul_int "
|
||||
MEMINFO_MEM_HIGH_FREE, // ul_int "
|
||||
MEMINFO_MEM_HIGH_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_HIGH_USED, // ul_int derived from MEM_HIGH_TOTAL - MEM_HIGH_FREE
|
||||
MEMINFO_MEM_HUGETBL, // ul_int /proc/meminfo
|
||||
MEMINFO_MEM_HUGE_ANON, // ul_int "
|
||||
MEMINFO_MEM_HUGE_FREE, // ul_int "
|
||||
MEMINFO_MEM_HUGE_RSVD, // ul_int "
|
||||
MEMINFO_MEM_HUGE_SIZE, // ul_int "
|
||||
MEMINFO_MEM_HUGE_SURPLUS, // ul_int "
|
||||
MEMINFO_MEM_HUGE_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_INACTIVE, // ul_int "
|
||||
MEMINFO_MEM_INACTIVE_ANON, // ul_int "
|
||||
MEMINFO_MEM_INACTIVE_FILE, // ul_int "
|
||||
MEMINFO_MEM_KERNEL_RECLAIM, // ul_int "
|
||||
MEMINFO_MEM_KERNEL_STACK, // ul_int "
|
||||
MEMINFO_MEM_LOCKED, // ul_int "
|
||||
MEMINFO_MEM_LOW_FREE, // ul_int "
|
||||
MEMINFO_MEM_LOW_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_LOW_USED, // ul_int derived from MEM_LOW_TOTAL - MEM_LOW_FREE
|
||||
MEMINFO_MEM_MAPPED, // ul_int /proc/meminfo
|
||||
MEMINFO_MEM_MAP_COPY, // ul_int "
|
||||
MEMINFO_MEM_NFS_UNSTABLE, // ul_int "
|
||||
MEMINFO_MEM_PAGE_TABLES, // ul_int "
|
||||
MEMINFO_MEM_PER_CPU, // ul_int "
|
||||
MEMINFO_MEM_QUICKLISTS, // ul_int "
|
||||
MEMINFO_MEM_SHARED, // ul_int "
|
||||
MEMINFO_MEM_SHMEM_HUGE, // ul_int "
|
||||
MEMINFO_MEM_SHMEM_HUGE_MAP, // ul_int "
|
||||
MEMINFO_MEM_SLAB, // ul_int "
|
||||
MEMINFO_MEM_SLAB_RECLAIM, // ul_int "
|
||||
MEMINFO_MEM_SLAB_UNRECLAIM, // ul_int "
|
||||
MEMINFO_MEM_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_UNEVICTABLE, // ul_int "
|
||||
MEMINFO_MEM_USED, // ul_int derived from MEM_TOTAL - MEM_BUFFERS - MEM_CACHED_ALL - MEM_FREE
|
||||
MEMINFO_MEM_VM_ALLOC_CHUNK, // ul_int /proc/meminfo
|
||||
MEMINFO_MEM_VM_ALLOC_TOTAL, // ul_int "
|
||||
MEMINFO_MEM_VM_ALLOC_USED, // ul_int "
|
||||
MEMINFO_MEM_WRITEBACK, // ul_int "
|
||||
MEMINFO_MEM_WRITEBACK_TMP, // ul_int "
|
||||
|
||||
MEMINFO_DELTA_ACTIVE, // s_int dervied from above
|
||||
MEMINFO_DELTA_ACTIVE_ANON, // s_int "
|
||||
MEMINFO_DELTA_ACTIVE_FILE, // s_int "
|
||||
MEMINFO_DELTA_ANON, // s_int "
|
||||
MEMINFO_DELTA_AVAILABLE, // s_int "
|
||||
MEMINFO_DELTA_BOUNCE, // s_int "
|
||||
MEMINFO_DELTA_BUFFERS, // s_int "
|
||||
MEMINFO_DELTA_CACHED, // s_int "
|
||||
MEMINFO_DELTA_CACHED_ALL, // s_int "
|
||||
MEMINFO_DELTA_COMMIT_LIMIT, // s_int "
|
||||
MEMINFO_DELTA_COMMITTED_AS, // s_int "
|
||||
MEMINFO_DELTA_HARD_CORRUPTED, // s_int "
|
||||
MEMINFO_DELTA_DIRTY, // s_int "
|
||||
MEMINFO_DELTA_FREE, // s_int "
|
||||
MEMINFO_DELTA_HUGE_ANON, // s_int "
|
||||
MEMINFO_DELTA_HUGE_FREE, // s_int "
|
||||
MEMINFO_DELTA_HUGE_RSVD, // s_int "
|
||||
MEMINFO_DELTA_HUGE_SIZE, // s_int "
|
||||
MEMINFO_DELTA_HUGE_SURPLUS, // s_int "
|
||||
MEMINFO_DELTA_HUGE_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_INACTIVE, // s_int "
|
||||
MEMINFO_DELTA_INACTIVE_ANON, // s_int "
|
||||
MEMINFO_DELTA_INACTIVE_FILE, // s_int "
|
||||
MEMINFO_DELTA_KERNEL_RECLAIM, // s_int "
|
||||
MEMINFO_DELTA_KERNEL_STACK, // s_int "
|
||||
MEMINFO_DELTA_LOCKED, // s_int "
|
||||
MEMINFO_DELTA_MAPPED, // s_int "
|
||||
MEMINFO_DELTA_MAP_COPY, // s_int "
|
||||
MEMINFO_DELTA_NFS_UNSTABLE, // s_int "
|
||||
MEMINFO_DELTA_PAGE_TABLES, // s_int "
|
||||
MEMINFO_DELTA_QUICKLISTS, // s_int "
|
||||
MEMINFO_DELTA_SHARED, // s_int "
|
||||
MEMINFO_DELTA_SHMEM_HUGE, // s_int "
|
||||
MEMINFO_DELTA_SHMEM_HUGE_MAP, // s_int "
|
||||
MEMINFO_DELTA_SLAB, // s_int "
|
||||
MEMINFO_DELTA_SLAB_RECLAIM, // s_int "
|
||||
MEMINFO_DELTA_SLAB_UNRECLAIM, // s_int "
|
||||
MEMINFO_DELTA_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_UNEVICTABLE, // s_int "
|
||||
MEMINFO_DELTA_USED, // s_int "
|
||||
MEMINFO_DELTA_VM_ALLOC_CHUNK, // s_int "
|
||||
MEMINFO_DELTA_VM_ALLOC_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_VM_ALLOC_USED, // s_int "
|
||||
MEMINFO_DELTA_WRITEBACK, // s_int "
|
||||
MEMINFO_DELTA_WRITEBACK_TMP, // s_int "
|
||||
MEMINFO_DELTA_ACTIVE, // s_int derived from above
|
||||
MEMINFO_DELTA_ACTIVE_ANON, // s_int "
|
||||
MEMINFO_DELTA_ACTIVE_FILE, // s_int "
|
||||
MEMINFO_DELTA_ANON, // s_int "
|
||||
MEMINFO_DELTA_AVAILABLE, // s_int "
|
||||
MEMINFO_DELTA_BOUNCE, // s_int "
|
||||
MEMINFO_DELTA_BUFFERS, // s_int "
|
||||
MEMINFO_DELTA_CACHED, // s_int "
|
||||
MEMINFO_DELTA_CACHED_ALL, // s_int "
|
||||
MEMINFO_DELTA_CMA_FREE, // s_int "
|
||||
MEMINFO_DELTA_CMA_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_COMMITTED_AS, // s_int "
|
||||
MEMINFO_DELTA_COMMIT_LIMIT, // s_int "
|
||||
MEMINFO_DELTA_DIRECTMAP_1G, // s_int "
|
||||
MEMINFO_DELTA_DIRECTMAP_2M, // s_int "
|
||||
MEMINFO_DELTA_DIRECTMAP_4K, // s_int "
|
||||
MEMINFO_DELTA_DIRECTMAP_4M, // s_int "
|
||||
MEMINFO_DELTA_DIRTY, // s_int "
|
||||
MEMINFO_DELTA_FREE, // s_int "
|
||||
MEMINFO_DELTA_HARD_CORRUPTED, // s_int "
|
||||
MEMINFO_DELTA_HIGH_FREE, // s_int "
|
||||
MEMINFO_DELTA_HIGH_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_HIGH_USED, // s_int "
|
||||
MEMINFO_DELTA_HUGETBL, // s_int "
|
||||
MEMINFO_DELTA_HUGE_ANON, // s_int "
|
||||
MEMINFO_DELTA_HUGE_FREE, // s_int "
|
||||
MEMINFO_DELTA_HUGE_RSVD, // s_int "
|
||||
MEMINFO_DELTA_HUGE_SIZE, // s_int "
|
||||
MEMINFO_DELTA_HUGE_SURPLUS, // s_int "
|
||||
MEMINFO_DELTA_HUGE_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_INACTIVE, // s_int "
|
||||
MEMINFO_DELTA_INACTIVE_ANON, // s_int "
|
||||
MEMINFO_DELTA_INACTIVE_FILE, // s_int "
|
||||
MEMINFO_DELTA_KERNEL_RECLAIM, // s_int "
|
||||
MEMINFO_DELTA_KERNEL_STACK, // s_int "
|
||||
MEMINFO_DELTA_LOCKED, // s_int "
|
||||
MEMINFO_DELTA_LOW_FREE, // s_int "
|
||||
MEMINFO_DELTA_LOW_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_LOW_USED, // s_int "
|
||||
MEMINFO_DELTA_MAPPED, // s_int "
|
||||
MEMINFO_DELTA_MAP_COPY, // s_int "
|
||||
MEMINFO_DELTA_NFS_UNSTABLE, // s_int "
|
||||
MEMINFO_DELTA_PAGE_TABLES, // s_int "
|
||||
MEMINFO_DELTA_PER_CPU, // s_int "
|
||||
MEMINFO_DELTA_QUICKLISTS, // s_int "
|
||||
MEMINFO_DELTA_SHARED, // s_int "
|
||||
MEMINFO_DELTA_SHMEM_HUGE, // s_int "
|
||||
MEMINFO_DELTA_SHMEM_HUGE_MAP, // s_int "
|
||||
MEMINFO_DELTA_SLAB, // s_int "
|
||||
MEMINFO_DELTA_SLAB_RECLAIM, // s_int "
|
||||
MEMINFO_DELTA_SLAB_UNRECLAIM, // s_int "
|
||||
MEMINFO_DELTA_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_UNEVICTABLE, // s_int "
|
||||
MEMINFO_DELTA_USED, // s_int "
|
||||
MEMINFO_DELTA_VM_ALLOC_CHUNK, // s_int "
|
||||
MEMINFO_DELTA_VM_ALLOC_TOTAL, // s_int "
|
||||
MEMINFO_DELTA_VM_ALLOC_USED, // s_int "
|
||||
MEMINFO_DELTA_WRITEBACK, // s_int "
|
||||
MEMINFO_DELTA_WRITEBACK_TMP, // s_int "
|
||||
|
||||
MEMINFO_MEMHI_FREE, // ul_int /proc/meminfo
|
||||
MEMINFO_MEMHI_TOTAL, // ul_int "
|
||||
MEMINFO_MEMHI_USED, // ul_int "
|
||||
MEMINFO_SWAP_CACHED, // ul_int /proc/meminfo
|
||||
MEMINFO_SWAP_FREE, // ul_int "
|
||||
MEMINFO_SWAP_TOTAL, // ul_int "
|
||||
MEMINFO_SWAP_USED, // ul_int derived from SWAP_TOTAL - SWAP_FREE
|
||||
|
||||
MEMINFO_MEMLO_FREE, // ul_int "
|
||||
MEMINFO_MEMLO_TOTAL, // ul_int "
|
||||
MEMINFO_MEMLO_USED, // ul_int "
|
||||
|
||||
MEMINFO_SWAP_CACHED, // ul_int "
|
||||
MEMINFO_SWAP_FREE, // ul_int "
|
||||
MEMINFO_SWAP_TOTAL, // ul_int "
|
||||
MEMINFO_SWAP_USED, // ul_int "
|
||||
|
||||
MEMINFO_SWAP_DELTA_CACHED, // s_int dervied from above
|
||||
MEMINFO_SWAP_DELTA_FREE, // s_int "
|
||||
MEMINFO_SWAP_DELTA_TOTAL, // s_int "
|
||||
MEMINFO_SWAP_DELTA_USED // s_int "
|
||||
MEMINFO_SWAP_DELTA_CACHED, // s_int derived from above
|
||||
MEMINFO_SWAP_DELTA_FREE, // s_int "
|
||||
MEMINFO_SWAP_DELTA_TOTAL, // s_int "
|
||||
MEMINFO_SWAP_DELTA_USED // s_int "
|
||||
};
|
||||
|
||||
|
||||
|
@ -159,10 +159,10 @@ STR_set(EXE, exe)
|
||||
REG_set(EXIT_SIGNAL, s_int, exit_signal)
|
||||
REG_set(FLAGS, ul_int, flags)
|
||||
REG_set(FLT_MAJ, ul_int, maj_flt)
|
||||
REG_set(FLT_MAJ_C, ul_int, cmaj_flt)
|
||||
setDECL(FLT_MAJ_C) { (void)I; R->result.ul_int = P->maj_flt + P->cmaj_flt; }
|
||||
REG_set(FLT_MAJ_DELTA, s_int, maj_delta)
|
||||
REG_set(FLT_MIN, ul_int, min_flt)
|
||||
REG_set(FLT_MIN_C, ul_int, cmin_flt)
|
||||
setDECL(FLT_MIN_C) { (void)I; R->result.ul_int = P->min_flt + P->cmin_flt; }
|
||||
REG_set(FLT_MIN_DELTA, s_int, min_delta)
|
||||
REG_set(ID_EGID, u_int, egid)
|
||||
REG_set(ID_EGROUP, str, egroup)
|
||||
@ -210,11 +210,11 @@ REG_set(NS_UTS, ul_int, ns.ns[5])
|
||||
REG_set(OOM_ADJ, s_int, oom_adj)
|
||||
REG_set(OOM_SCORE, s_int, oom_score)
|
||||
REG_set(PRIORITY, s_int, priority)
|
||||
REG_set(PRIORITY_RT, s_int, rtprio)
|
||||
REG_set(PROCESSOR, u_int, processor)
|
||||
setDECL(PROCESSOR_NODE) { (void)I; R->result.s_int = numa_node_of_cpu(P->processor); }
|
||||
REG_set(RSS, ul_int, rss)
|
||||
REG_set(RSS_RLIM, ul_int, rss_rlim)
|
||||
REG_set(RTPRIO, s_int, rtprio)
|
||||
REG_set(SCHED_CLASS, s_int, sched)
|
||||
STR_set(SD_MACH, sd_mach)
|
||||
STR_set(SD_OUID, sd_ouid)
|
||||
@ -464,11 +464,11 @@ static struct {
|
||||
{ RS(OOM_ADJ), f_oom, NULL, QS(s_int), 0, TS(s_int) },
|
||||
{ RS(OOM_SCORE), f_oom, NULL, QS(s_int), 0, TS(s_int) },
|
||||
{ RS(PRIORITY), f_stat, NULL, QS(s_int), 0, TS(s_int) },
|
||||
{ RS(PRIORITY_RT), f_stat, NULL, QS(s_int), 0, TS(s_int) },
|
||||
{ RS(PROCESSOR), f_stat, NULL, QS(u_int), 0, TS(u_int) },
|
||||
{ RS(PROCESSOR_NODE), f_stat, NULL, QS(s_int), 0, TS(s_int) },
|
||||
{ RS(RSS), f_stat, NULL, QS(ul_int), 0, TS(ul_int) },
|
||||
{ RS(RSS_RLIM), f_stat, NULL, QS(ul_int), 0, TS(ul_int) },
|
||||
{ RS(RTPRIO), f_stat, NULL, QS(s_int), 0, TS(s_int) },
|
||||
{ RS(SCHED_CLASS), f_stat, NULL, QS(s_int), 0, TS(s_int) },
|
||||
{ RS(SD_MACH), f_systemd, FF(str), QS(str), 0, TS(str) },
|
||||
{ RS(SD_OUID), f_systemd, FF(str), QS(str), 0, TS(str) },
|
||||
|
208
proc/pids.h
208
proc/pids.h
@ -32,124 +32,124 @@ enum pids_item {
|
||||
PIDS_extra, // ( reset to zero )
|
||||
// returns origin, see proc(5)
|
||||
// ------- -------------------
|
||||
PIDS_ADDR_END_CODE, // ul_int stat
|
||||
PIDS_ADDR_KSTK_EIP, // ul_int stat
|
||||
PIDS_ADDR_KSTK_ESP, // ul_int stat
|
||||
PIDS_ADDR_START_CODE, // ul_int stat
|
||||
PIDS_ADDR_START_STACK, // ul_int stat
|
||||
PIDS_CGNAME, // str cgroup
|
||||
PIDS_ADDR_END_CODE, // ul_int stat: endcode
|
||||
PIDS_ADDR_KSTK_EIP, // ul_int stat: kstkeip
|
||||
PIDS_ADDR_KSTK_ESP, // ul_int stat: kstkesp
|
||||
PIDS_ADDR_START_CODE, // ul_int stat: startcode
|
||||
PIDS_ADDR_START_STACK, // ul_int stat: statstack
|
||||
PIDS_CGNAME, // str [ derived from CGROUP ':name=' ]
|
||||
PIDS_CGROUP, // str cgroup
|
||||
PIDS_CGROUP_V, // strv cgroup
|
||||
PIDS_CMD, // str stat or status
|
||||
PIDS_CGROUP_V, // strv cgroup, as *str[]
|
||||
PIDS_CMD, // str stat: comm or status: Name
|
||||
PIDS_CMDLINE, // str cmdline
|
||||
PIDS_CMDLINE_V, // strv cmdline
|
||||
PIDS_CMDLINE_V, // strv cmdline, as *str[]
|
||||
PIDS_ENVIRON, // str environ
|
||||
PIDS_ENVIRON_V, // strv environ
|
||||
PIDS_ENVIRON_V, // strv environ, as *str[]
|
||||
PIDS_EXE, // str exe
|
||||
PIDS_EXIT_SIGNAL, // s_int stat
|
||||
PIDS_FLAGS, // ul_int stat
|
||||
PIDS_FLT_MAJ, // ul_int stat
|
||||
PIDS_FLT_MAJ_C, // ul_int stat
|
||||
PIDS_FLT_MAJ_DELTA, // s_int stat
|
||||
PIDS_FLT_MIN, // ul_int stat
|
||||
PIDS_FLT_MIN_C, // ul_int stat
|
||||
PIDS_FLT_MIN_DELTA, // s_int stat
|
||||
PIDS_ID_EGID, // u_int status
|
||||
PIDS_ID_EGROUP, // str [ EGID based, see: getgrgid(3) ]
|
||||
PIDS_ID_EUID, // u_int status
|
||||
PIDS_ID_EUSER, // str [ EUID based, see: getpwuid(3) ]
|
||||
PIDS_ID_FGID, // u_int status
|
||||
PIDS_ID_FGROUP, // str [ FGID based, see: getgrgid(3) ]
|
||||
PIDS_ID_FUID, // u_int status
|
||||
PIDS_ID_FUSER, // str [ FUID based, see: getpwuid(3) ]
|
||||
PIDS_EXIT_SIGNAL, // s_int stat: exit_signal
|
||||
PIDS_FLAGS, // ul_int stat: flags
|
||||
PIDS_FLT_MAJ, // ul_int stat: majflt
|
||||
PIDS_FLT_MAJ_C, // ul_int stat: majflt + cmajflt
|
||||
PIDS_FLT_MAJ_DELTA, // s_int [ derived from FLT_MAJ ]
|
||||
PIDS_FLT_MIN, // ul_int stat: minflt
|
||||
PIDS_FLT_MIN_C, // ul_int stat: minflt + cminflt
|
||||
PIDS_FLT_MIN_DELTA, // s_int [ derived from FLT_MIN ]
|
||||
PIDS_ID_EGID, // u_int status: Uid
|
||||
PIDS_ID_EGROUP, // str [ derived from EGID, see getgrgid(3) ]
|
||||
PIDS_ID_EUID, // u_int status: Uid
|
||||
PIDS_ID_EUSER, // str [ derived from EUID, see getpwuid(3) ]
|
||||
PIDS_ID_FGID, // u_int status: Uid
|
||||
PIDS_ID_FGROUP, // str [ derived from FGID, see getgrgid(3) ]
|
||||
PIDS_ID_FUID, // u_int status: Uid
|
||||
PIDS_ID_FUSER, // str [ derived from FUID, see getpwuid(3) ]
|
||||
PIDS_ID_LOGIN, // s_int loginuid
|
||||
PIDS_ID_PGRP, // s_int stat
|
||||
PIDS_ID_PID, // s_int as: /proc/<pid>
|
||||
PIDS_ID_PPID, // s_int stat or status
|
||||
PIDS_ID_RGID, // u_int status
|
||||
PIDS_ID_RGROUP, // str [ RGID based, see: getgrgid(3) ]
|
||||
PIDS_ID_RUID, // u_int status
|
||||
PIDS_ID_RUSER, // str [ RUID based, see: getpwuid(3) ]
|
||||
PIDS_ID_SESSION, // s_int stat
|
||||
PIDS_ID_SGID, // u_int status
|
||||
PIDS_ID_SGROUP, // str [ SGID based, see: getgrgid(3) ]
|
||||
PIDS_ID_SUID, // u_int status
|
||||
PIDS_ID_SUSER, // str [ SUID based, see: getpwuid(3) ]
|
||||
PIDS_ID_TGID, // s_int status
|
||||
PIDS_ID_TID, // s_int as: /proc/<pid>/task/<tid>
|
||||
PIDS_ID_TPGID, // s_int stat
|
||||
PIDS_LXCNAME, // str cgroup
|
||||
PIDS_MEM_CODE, // ul_int statm
|
||||
PIDS_MEM_CODE_PGS, // ul_int statm
|
||||
PIDS_MEM_DATA, // ul_int statm
|
||||
PIDS_MEM_DATA_PGS, // ul_int statm
|
||||
PIDS_MEM_RES, // ul_int statm
|
||||
PIDS_MEM_RES_PGS, // ul_int statm
|
||||
PIDS_MEM_SHR, // ul_int statm
|
||||
PIDS_MEM_SHR_PGS, // ul_int statm
|
||||
PIDS_MEM_VIRT, // ul_int statm
|
||||
PIDS_MEM_VIRT_PGS, // ul_int statm
|
||||
PIDS_NICE, // s_int stat
|
||||
PIDS_NLWP, // s_int stat or status
|
||||
PIDS_ID_PGRP, // s_int stat: pgrp
|
||||
PIDS_ID_PID, // s_int from /proc/<pid>
|
||||
PIDS_ID_PPID, // s_int stat: ppid or status: PPid
|
||||
PIDS_ID_RGID, // u_int status: Gid
|
||||
PIDS_ID_RGROUP, // str [ derived from RGID, see getgrgid(3) ]
|
||||
PIDS_ID_RUID, // u_int status: Gid
|
||||
PIDS_ID_RUSER, // str [ derived from RUID, see getpwuid(3) ]
|
||||
PIDS_ID_SESSION, // s_int stat: session
|
||||
PIDS_ID_SGID, // u_int status: Gid
|
||||
PIDS_ID_SGROUP, // str [ derived from SGID, see getgrgid(3) ]
|
||||
PIDS_ID_SUID, // u_int status: Gid
|
||||
PIDS_ID_SUSER, // str [ derived from SUID, see getpwuid(3) ]
|
||||
PIDS_ID_TGID, // s_int status: Tgid
|
||||
PIDS_ID_TID, // s_int from /proc/<pid>/task/<tid>
|
||||
PIDS_ID_TPGID, // s_int stat: tpgid
|
||||
PIDS_LXCNAME, // str [ derived from CGROUP 'lxc.payload/' ]
|
||||
PIDS_MEM_CODE, // ul_int [ derived from MEM_CODE_PGS, as KiB ]
|
||||
PIDS_MEM_CODE_PGS, // ul_int statm: text
|
||||
PIDS_MEM_DATA, // ul_int [ derived from MEM_DATA_PGS, as KiB ]
|
||||
PIDS_MEM_DATA_PGS, // ul_int statm: data
|
||||
PIDS_MEM_RES, // ul_int [ derived from MEM_RES_PGS, as KiB ]
|
||||
PIDS_MEM_RES_PGS, // ul_int statm: resident
|
||||
PIDS_MEM_SHR, // ul_int [ derived from MEM_SHR_PGS, as KiB ]
|
||||
PIDS_MEM_SHR_PGS, // ul_int statm: shared
|
||||
PIDS_MEM_VIRT, // ul_int [ derived from MEM_VIRT_PGS, as KiB ]
|
||||
PIDS_MEM_VIRT_PGS, // ul_int statm: size
|
||||
PIDS_NICE, // s_int stat: nice
|
||||
PIDS_NLWP, // s_int stat: num_threads or status: Threads
|
||||
PIDS_NS_IPC, // ul_int ns/
|
||||
PIDS_NS_MNT, // ul_int ns/
|
||||
PIDS_NS_NET, // ul_int ns/
|
||||
PIDS_NS_PID, // ul_int ns/
|
||||
PIDS_NS_USER, // ul_int ns/
|
||||
PIDS_NS_UTS, // ul_int ns/
|
||||
PIDS_NS_MNT, // ul_int "
|
||||
PIDS_NS_NET, // ul_int "
|
||||
PIDS_NS_PID, // ul_int "
|
||||
PIDS_NS_USER, // ul_int "
|
||||
PIDS_NS_UTS, // ul_int "
|
||||
PIDS_OOM_ADJ, // s_int oom_score_adj
|
||||
PIDS_OOM_SCORE, // s_int oom_score
|
||||
PIDS_PRIORITY, // s_int stat
|
||||
PIDS_PROCESSOR, // u_int stat
|
||||
PIDS_PROCESSOR_NODE, // s_int stat
|
||||
PIDS_RSS, // ul_int stat
|
||||
PIDS_RSS_RLIM, // ul_int stat
|
||||
PIDS_RTPRIO, // s_int stat
|
||||
PIDS_SCHED_CLASS, // s_int stat
|
||||
PIDS_SD_MACH, // str [ PID/TID based, see: sd-login(3) ]
|
||||
PIDS_PRIORITY, // s_int stat: priority
|
||||
PIDS_PRIORITY_RT, // s_int stat: rt_priority
|
||||
PIDS_PROCESSOR, // u_int stat: processor
|
||||
PIDS_PROCESSOR_NODE, // s_int [ derived from PROCESSOR, see numa(3) ]
|
||||
PIDS_RSS, // ul_int stat: rss
|
||||
PIDS_RSS_RLIM, // ul_int stat: rsslim
|
||||
PIDS_SCHED_CLASS, // s_int stat: policy
|
||||
PIDS_SD_MACH, // str [ derived from PID/TID, see sd-login(3) ]
|
||||
PIDS_SD_OUID, // str "
|
||||
PIDS_SD_SEAT, // str "
|
||||
PIDS_SD_SESS, // str "
|
||||
PIDS_SD_SLICE, // str "
|
||||
PIDS_SD_UNIT, // str "
|
||||
PIDS_SD_UUNIT, // str "
|
||||
PIDS_SIGBLOCKED, // str status
|
||||
PIDS_SIGCATCH, // str status
|
||||
PIDS_SIGIGNORE, // str status
|
||||
PIDS_SIGNALS, // str status
|
||||
PIDS_SIGPENDING, // str status
|
||||
PIDS_STATE, // s_ch stat or status
|
||||
PIDS_SUPGIDS, // str status
|
||||
PIDS_SUPGROUPS, // str [ SUPGIDS based, see: getgrgid(3) ]
|
||||
PIDS_TICS_ALL, // ull_int stat
|
||||
PIDS_TICS_ALL_C, // ull_int stat
|
||||
PIDS_TICS_ALL_DELTA, // s_int stat
|
||||
PIDS_TICS_BLKIO, // ull_int stat
|
||||
PIDS_TICS_GUEST, // ull_int stat
|
||||
PIDS_TICS_GUEST_C, // ull_int stat
|
||||
PIDS_TICS_SYSTEM, // ull_int stat
|
||||
PIDS_TICS_SYSTEM_C, // ull_int stat
|
||||
PIDS_TICS_USER, // ull_int stat
|
||||
PIDS_TICS_USER_C, // ull_int stat
|
||||
PIDS_TIME_ALL, // ull_int stat
|
||||
PIDS_TIME_ELAPSED, // ull_int stat
|
||||
PIDS_TIME_START, // ull_int stat
|
||||
PIDS_TTY, // s_int stat
|
||||
PIDS_TTY_NAME, // str stat
|
||||
PIDS_TTY_NUMBER, // str stat
|
||||
PIDS_VM_DATA, // ul_int status
|
||||
PIDS_VM_EXE, // ul_int status
|
||||
PIDS_VM_LIB, // ul_int status
|
||||
PIDS_VM_RSS, // ul_int status
|
||||
PIDS_VM_RSS_ANON, // ul_int status
|
||||
PIDS_VM_RSS_FILE, // ul_int status
|
||||
PIDS_VM_RSS_LOCKED, // ul_int status
|
||||
PIDS_VM_RSS_SHARED, // ul_int status
|
||||
PIDS_VM_SIZE, // ul_int status
|
||||
PIDS_VM_STACK, // ul_int status
|
||||
PIDS_VM_SWAP, // ul_int status
|
||||
PIDS_VM_USED, // ul_int status
|
||||
PIDS_VSIZE_PGS, // ul_int stat
|
||||
PIDS_SIGBLOCKED, // str status: SigBlk
|
||||
PIDS_SIGCATCH, // str status: SigCgt
|
||||
PIDS_SIGIGNORE, // str status: SigIgn
|
||||
PIDS_SIGNALS, // str status: ShdPnd
|
||||
PIDS_SIGPENDING, // str status: SigPnd
|
||||
PIDS_STATE, // s_ch stat: state or status: State
|
||||
PIDS_SUPGIDS, // str status: Groups
|
||||
PIDS_SUPGROUPS, // str [ derived from SUPGIDS, see getgrgid(3) ]
|
||||
PIDS_TICS_ALL, // ull_int stat: stime + utime
|
||||
PIDS_TICS_ALL_C, // ull_int stat: stime + utime + cstime + cutime
|
||||
PIDS_TICS_ALL_DELTA, // s_int [ derived from TICS_ALL ]
|
||||
PIDS_TICS_BLKIO, // ull_int stat: delayacct_blkio_ticks
|
||||
PIDS_TICS_GUEST, // ull_int stat: guest_time
|
||||
PIDS_TICS_GUEST_C, // ull_int stat: guest_time + cguest_time
|
||||
PIDS_TICS_SYSTEM, // ull_int stat: stime
|
||||
PIDS_TICS_SYSTEM_C, // ull_int stat: stime + cstime
|
||||
PIDS_TICS_USER, // ull_int stat: utime
|
||||
PIDS_TICS_USER_C, // ull_int stat: utime + cutime
|
||||
PIDS_TIME_ALL, // ull_int [ derived from (utime + stime) / hertz ]
|
||||
PIDS_TIME_ELAPSED, // ull_int [ derived from /proc/uptime - (starttime / hertz) }
|
||||
PIDS_TIME_START, // ull_int stat: starttime
|
||||
PIDS_TTY, // s_int stat: tty_nr
|
||||
PIDS_TTY_NAME, // str [ derived from TTY ]
|
||||
PIDS_TTY_NUMBER, // str [ derived from TTY as str ]
|
||||
PIDS_VM_DATA, // ul_int status: VmData
|
||||
PIDS_VM_EXE, // ul_int status: VmExe
|
||||
PIDS_VM_LIB, // ul_int status: VmLib
|
||||
PIDS_VM_RSS, // ul_int status: VmRSS
|
||||
PIDS_VM_RSS_ANON, // ul_int status: RssAnon
|
||||
PIDS_VM_RSS_FILE, // ul_int status: RssFile
|
||||
PIDS_VM_RSS_LOCKED, // ul_int status: VmLck
|
||||
PIDS_VM_RSS_SHARED, // ul_int status: RssShmem
|
||||
PIDS_VM_SIZE, // ul_int status: VmSize
|
||||
PIDS_VM_STACK, // ul_int status: VmStk
|
||||
PIDS_VM_SWAP, // ul_int status: VmSwap
|
||||
PIDS_VM_USED, // ul_int status: VmRSS + VmSwap
|
||||
PIDS_VSIZE_PGS, // ul_int stat: vsize
|
||||
PIDS_WCHAN_NAME // str wchan
|
||||
};
|
||||
|
||||
|
160
proc/slabinfo.c
160
proc/slabinfo.c
@ -52,11 +52,11 @@
|
||||
would be forced to duplicate global slabs stuff in every node results stack, |
|
||||
the following #define can be used to enforce strictly logical return values. |
|
||||
select: allow only SLABINFO & SLABS items
|
||||
reap: allow only SLABINFO & SLABNODE items
|
||||
reap: allow only SLABINFO & SLAB items
|
||||
Without the #define, these functions always return something even if just 0. |
|
||||
get: return only SLABS results, else 0
|
||||
select: return only SLABINFO & SLABS results, else zero
|
||||
reap: return any requested, even when duplicated in each node's stack */
|
||||
reap: return any requested, even when duplicated in each cache's stack */
|
||||
//#define ENFORCE_LOGICAL // ensure only logical items accepted by select/reap
|
||||
|
||||
|
||||
@ -148,42 +148,42 @@ struct slabinfo_info {
|
||||
setDECL(noop) { (void)R; (void)S; (void)N; }
|
||||
setDECL(extra) { (void)R; (void)S; (void)N; }
|
||||
|
||||
REG_set(SLABS_OBJS, u_int, nr_objs)
|
||||
REG_set(SLABS_AOBJS, u_int, nr_active_objs)
|
||||
REG_set(SLABS_PAGES, u_int, nr_pages)
|
||||
REG_set(SLABS_SLABS, u_int, nr_slabs)
|
||||
REG_set(SLABS_ASLABS, u_int, nr_active_slabs)
|
||||
REG_set(SLABS_CACHES, u_int, nr_caches)
|
||||
REG_set(SLABS_ACACHES, u_int, nr_active_caches)
|
||||
REG_set(SLABS_SIZE_AVG, u_int, avg_obj_size)
|
||||
REG_set(SLABS_SIZE_MIN, u_int, min_obj_size)
|
||||
REG_set(SLABS_SIZE_MAX, u_int, max_obj_size)
|
||||
REG_set(SLABS_SIZE_ACTIVE, ul_int, active_size)
|
||||
REG_set(SLABS_SIZE_TOTAL, ul_int, total_size)
|
||||
NOD_set(SLAB_NAME, str, name)
|
||||
NOD_set(SLAB_NUM_OBJS, u_int, nr_objs)
|
||||
NOD_set(SLAB_ACTIVE_OBJS, u_int, nr_active_objs)
|
||||
NOD_set(SLAB_OBJ_SIZE, u_int, obj_size)
|
||||
NOD_set(SLAB_OBJ_PER_SLAB, u_int, objs_per_slab)
|
||||
NOD_set(SLAB_NUMS_SLABS, u_int, nr_slabs)
|
||||
NOD_set(SLAB_ACTIVE_SLABS, u_int, nr_active_slabs)
|
||||
NOD_set(SLAB_PAGES_PER_SLAB, u_int, pages_per_slab)
|
||||
NOD_set(SLAB_PERCENT_USED, u_int, use)
|
||||
NOD_set(SLAB_SIZE_TOTAL, ul_int, cache_size)
|
||||
|
||||
HST_set(SLABS_DELTA_OBJS, s_int, nr_objs)
|
||||
HST_set(SLABS_DELTA_AOBJS, s_int, nr_active_objs)
|
||||
HST_set(SLABS_DELTA_PAGES, s_int, nr_pages)
|
||||
HST_set(SLABS_DELTA_SLABS, s_int, nr_slabs)
|
||||
HST_set(SLABS_DELTA_ASLABS, s_int, nr_active_slabs)
|
||||
HST_set(SLABS_DELTA_CACHES, s_int, nr_caches)
|
||||
HST_set(SLABS_DELTA_ACACHES, s_int, nr_active_caches)
|
||||
HST_set(SLABS_DELTA_SIZE_AVG, s_int, avg_obj_size)
|
||||
HST_set(SLABS_DELTA_SIZE_MIN, s_int, min_obj_size)
|
||||
HST_set(SLABS_DELTA_SIZE_MAX, s_int, max_obj_size)
|
||||
HST_set(SLABS_DELTA_SIZE_ACTIVE, s_int, active_size)
|
||||
HST_set(SLABS_DELTA_SIZE_TOTAL, s_int, total_size)
|
||||
REG_set(SLABS_CACHES_TOTAL, u_int, nr_caches)
|
||||
REG_set(SLABS_CACHES_ACTIVE, u_int, nr_active_caches)
|
||||
REG_set(SLABS_NUM_OBJS, u_int, nr_objs)
|
||||
REG_set(SLABS_ACTIVE_OBJS, u_int, nr_active_objs)
|
||||
REG_set(SLABS_OBJ_SIZE_AVG, u_int, avg_obj_size)
|
||||
REG_set(SLABS_OBJ_SIZE_MIN, u_int, min_obj_size)
|
||||
REG_set(SLABS_OBJ_SIZE_MAX, u_int, max_obj_size)
|
||||
REG_set(SLABS_NUMS_SLABS, u_int, nr_slabs)
|
||||
REG_set(SLABS_ACTIVE_SLABS, u_int, nr_active_slabs)
|
||||
REG_set(SLABS_PAGES_TOTAL, u_int, nr_pages)
|
||||
REG_set(SLABS_SIZE_ACTIVE, ul_int, active_size)
|
||||
REG_set(SLABS_SIZE_TOTAL, ul_int, total_size)
|
||||
|
||||
NOD_set(SLABNODE_NAME, str, name)
|
||||
NOD_set(SLABNODE_OBJS, u_int, nr_objs)
|
||||
NOD_set(SLABNODE_AOBJS, u_int, nr_active_objs)
|
||||
NOD_set(SLABNODE_OBJ_SIZE, u_int, obj_size)
|
||||
NOD_set(SLABNODE_OBJS_PER_SLAB, u_int, objs_per_slab)
|
||||
NOD_set(SLABNODE_PAGES_PER_SLAB, u_int, pages_per_slab)
|
||||
NOD_set(SLABNODE_SLABS, u_int, nr_slabs)
|
||||
NOD_set(SLABNODE_ASLABS, u_int, nr_active_slabs)
|
||||
NOD_set(SLABNODE_USE, u_int, use)
|
||||
NOD_set(SLABNODE_SIZE, ul_int, cache_size)
|
||||
HST_set(SLABS_DELTA_CACHES_TOTAL, s_int, nr_caches)
|
||||
HST_set(SLABS_DELTA_CACHES_ACTIVE, s_int, nr_active_caches)
|
||||
HST_set(SLABS_DELTA_NUM_OBJS, s_int, nr_objs)
|
||||
HST_set(SLABS_DELTA_ACTIVE_OBJS, s_int, nr_active_objs)
|
||||
HST_set(SLABS_DELTA_OBJ_SIZE_AVG, s_int, avg_obj_size)
|
||||
HST_set(SLABS_DELTA_OBJ_SIZE_MIN, s_int, min_obj_size)
|
||||
HST_set(SLABS_DELTA_OBJ_SIZE_MAX, s_int, max_obj_size)
|
||||
HST_set(SLABS_DELTA_NUMS_SLABS, s_int, nr_slabs)
|
||||
HST_set(SLABS_DELTA_ACTIVE_SLABS, s_int, nr_active_slabs)
|
||||
HST_set(SLABS_DELTA_PAGES_TOTAL, s_int, nr_pages)
|
||||
HST_set(SLABS_DELTA_SIZE_ACTIVE, s_int, active_size)
|
||||
HST_set(SLABS_DELTA_SIZE_TOTAL, s_int, total_size)
|
||||
|
||||
#undef setDECL
|
||||
#undef REG_set
|
||||
@ -252,55 +252,55 @@ static struct {
|
||||
QSR_t sortfunc; // sort cmp func for a specific type
|
||||
char *type2str; // the result type as a string value
|
||||
} Item_table[] = {
|
||||
/* setsfunc sortfunc type2str
|
||||
---------------------------- ----------- ---------- */
|
||||
{ RS(noop), QS(noop), TS_noop },
|
||||
{ RS(extra), QS(ul_int), TS_noop },
|
||||
/* setsfunc sortfunc type2str
|
||||
------------------------------ ----------- ---------- */
|
||||
{ RS(noop), QS(noop), TS_noop },
|
||||
{ RS(extra), QS(ul_int), TS_noop },
|
||||
|
||||
{ RS(SLABS_OBJS), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_AOBJS), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_PAGES), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_SLABS), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_ASLABS), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_CACHES), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_ACACHES), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_SIZE_AVG), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_SIZE_MIN), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_SIZE_MAX), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_SIZE_ACTIVE), QS(noop), TS(ul_int) },
|
||||
{ RS(SLABS_SIZE_TOTAL), QS(noop), TS(ul_int) },
|
||||
{ RS(SLAB_NAME), QS(str), TS(str) },
|
||||
{ RS(SLAB_NUM_OBJS), QS(u_int), TS(u_int) },
|
||||
{ RS(SLAB_ACTIVE_OBJS), QS(u_int), TS(u_int) },
|
||||
{ RS(SLAB_OBJ_SIZE), QS(u_int), TS(u_int) },
|
||||
{ RS(SLAB_OBJ_PER_SLAB), QS(u_int), TS(u_int) },
|
||||
{ RS(SLAB_NUMS_SLABS), QS(u_int), TS(u_int) },
|
||||
{ RS(SLAB_ACTIVE_SLABS), QS(u_int), TS(u_int) },
|
||||
{ RS(SLAB_PAGES_PER_SLAB), QS(u_int), TS(u_int) },
|
||||
{ RS(SLAB_PERCENT_USED), QS(u_int), TS(u_int) },
|
||||
{ RS(SLAB_SIZE_TOTAL), QS(ul_int), TS(ul_int) },
|
||||
|
||||
{ RS(SLABS_DELTA_OBJS), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_AOBJS), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_PAGES), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_SLABS), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_ASLABS), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_CACHES), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_ACACHES), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_SIZE_AVG), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_SIZE_MIN), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_SIZE_MAX), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_SIZE_ACTIVE), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_SIZE_TOTAL), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_CACHES_TOTAL), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_CACHES_ACTIVE), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_NUM_OBJS), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_ACTIVE_OBJS), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_OBJ_SIZE_AVG), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_OBJ_SIZE_MIN), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_OBJ_SIZE_MAX), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_NUMS_SLABS), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_ACTIVE_SLABS), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_PAGES_TOTAL), QS(noop), TS(u_int) },
|
||||
{ RS(SLABS_SIZE_ACTIVE), QS(noop), TS(ul_int) },
|
||||
{ RS(SLABS_SIZE_TOTAL), QS(noop), TS(ul_int) },
|
||||
|
||||
{ RS(SLABNODE_NAME), QS(str), TS(str) },
|
||||
{ RS(SLABNODE_OBJS), QS(u_int), TS(u_int) },
|
||||
{ RS(SLABNODE_AOBJS), QS(u_int), TS(u_int) },
|
||||
{ RS(SLABNODE_OBJ_SIZE), QS(u_int), TS(u_int) },
|
||||
{ RS(SLABNODE_OBJS_PER_SLAB), QS(u_int), TS(u_int) },
|
||||
{ RS(SLABNODE_PAGES_PER_SLAB), QS(u_int), TS(u_int) },
|
||||
{ RS(SLABNODE_SLABS), QS(u_int), TS(u_int) },
|
||||
{ RS(SLABNODE_ASLABS), QS(u_int), TS(u_int) },
|
||||
{ RS(SLABNODE_USE), QS(u_int), TS(u_int) },
|
||||
{ RS(SLABNODE_SIZE), QS(ul_int), TS(ul_int) },
|
||||
{ RS(SLABS_DELTA_CACHES_TOTAL), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_CACHES_ACTIVE), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_NUM_OBJS), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_ACTIVE_OBJS), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_OBJ_SIZE_AVG), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_OBJ_SIZE_MIN), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_OBJ_SIZE_MAX), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_NUMS_SLABS), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_ACTIVE_SLABS), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_PAGES_TOTAL), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_SIZE_ACTIVE), QS(noop), TS(s_int) },
|
||||
{ RS(SLABS_DELTA_SIZE_TOTAL), QS(noop), TS(s_int) },
|
||||
|
||||
// dummy entry corresponding to SLABINFO_logical_end ...
|
||||
{ NULL, NULL, NULL }
|
||||
{ NULL, NULL, NULL }
|
||||
};
|
||||
|
||||
/* please note,
|
||||
* this enum MUST be 1 greater than the highest value of any enum */
|
||||
enum slabinfo_item SLABINFO_logical_end = SLABNODE_SIZE + 1;
|
||||
enum slabinfo_item SLABINFO_logical_end = SLABS_DELTA_SIZE_TOTAL + 1;
|
||||
|
||||
#undef setNAME
|
||||
#undef srtNAME
|
||||
@ -786,10 +786,10 @@ PROCPS_EXPORT int procps_slabinfo_new (
|
||||
return -ENOMEM;
|
||||
|
||||
#ifdef ENFORCE_LOGICAL
|
||||
p->select_ext.lowest = SLABS_OBJS;
|
||||
p->select_ext.lowest = SLABS_CACHES_TOTAL;
|
||||
p->select_ext.highest = SLABS_DELTA_SIZE_TOTAL;
|
||||
p->fetch_ext.lowest = SLABNODE_NAME;
|
||||
p->fetch_ext.highest = SLABNODE_SIZE;
|
||||
p->fetch_ext.lowest = SLAB_NAME;
|
||||
p->fetch_ext.highest = SLAB_SIZE_TOTAL;
|
||||
#endif
|
||||
|
||||
p->refcount = 1;
|
||||
@ -897,7 +897,7 @@ PROCPS_EXPORT struct slabinfo_result *procps_slabinfo_get (
|
||||
|
||||
/* procps_slabinfo_reap():
|
||||
*
|
||||
* Harvest all the requested SLABNODE (individual nodes) information
|
||||
* Harvest all the requested SLAB (individual nodes) information
|
||||
* providing the result stacks along with the total number of nodes.
|
||||
*
|
||||
* Returns: pointer to a slabinfo_reap struct on success, NULL on error.
|
||||
|
@ -28,46 +28,46 @@ extern "C "{
|
||||
#endif
|
||||
|
||||
enum slabinfo_item {
|
||||
SLABINFO_noop, // ( never altered )
|
||||
SLABINFO_extra, // ( reset to zero )
|
||||
// returns origin, see proc(5)
|
||||
// ------- -------------------
|
||||
SLABS_OBJS, // u_int /proc/slabinfo
|
||||
SLABS_AOBJS, // u_int "
|
||||
SLABS_PAGES, // u_int "
|
||||
SLABS_SLABS, // u_int "
|
||||
SLABS_ASLABS, // u_int "
|
||||
SLABS_CACHES, // u_int "
|
||||
SLABS_ACACHES, // u_int "
|
||||
SLABS_SIZE_AVG, // u_int "
|
||||
SLABS_SIZE_MIN, // u_int "
|
||||
SLABS_SIZE_MAX, // u_int "
|
||||
SLABS_SIZE_ACTIVE, // ul_int "
|
||||
SLABS_SIZE_TOTAL, // ul_int "
|
||||
SLABINFO_noop, // ( never altered )
|
||||
SLABINFO_extra, // ( reset to zero )
|
||||
// returns origin, see proc(5)
|
||||
// ------- -------------------
|
||||
SLAB_NAME, // str /proc/slabinfo
|
||||
SLAB_NUM_OBJS, // u_int "
|
||||
SLAB_ACTIVE_OBJS, // u_int "
|
||||
SLAB_OBJ_SIZE, // u_int "
|
||||
SLAB_OBJ_PER_SLAB, // u_int "
|
||||
SLAB_NUMS_SLABS, // u_int "
|
||||
SLAB_ACTIVE_SLABS, // u_int "
|
||||
SLAB_PAGES_PER_SLAB, // u_int "
|
||||
SLAB_PERCENT_USED, // u_int derived from ACTIVE_OBJS / NUM_OBJS
|
||||
SLAB_SIZE_TOTAL, // ul_int derived from page size * NUM_OBJS * PAGES_PER_SLAB
|
||||
|
||||
SLABS_DELTA_OBJS, // s_int dervied from above
|
||||
SLABS_DELTA_AOBJS, // s_int "
|
||||
SLABS_DELTA_PAGES, // s_int "
|
||||
SLABS_DELTA_SLABS, // s_int "
|
||||
SLABS_DELTA_ASLABS, // s_int "
|
||||
SLABS_DELTA_CACHES, // s_int "
|
||||
SLABS_DELTA_ACACHES, // s_int "
|
||||
SLABS_DELTA_SIZE_AVG, // s_int "
|
||||
SLABS_DELTA_SIZE_MIN, // s_int "
|
||||
SLABS_DELTA_SIZE_MAX, // s_int "
|
||||
SLABS_DELTA_SIZE_ACTIVE, // s_int "
|
||||
SLABS_DELTA_SIZE_TOTAL, // s_int "
|
||||
SLABS_CACHES_TOTAL, // u_int derived from all caches
|
||||
SLABS_CACHES_ACTIVE, // u_int "
|
||||
SLABS_NUM_OBJS, // u_int "
|
||||
SLABS_ACTIVE_OBJS, // u_int "
|
||||
SLABS_OBJ_SIZE_AVG, // u_int "
|
||||
SLABS_OBJ_SIZE_MIN, // u_int "
|
||||
SLABS_OBJ_SIZE_MAX, // u_int "
|
||||
SLABS_NUMS_SLABS, // u_int "
|
||||
SLABS_ACTIVE_SLABS, // u_int "
|
||||
SLABS_PAGES_TOTAL, // u_int "
|
||||
SLABS_SIZE_ACTIVE, // ul_int "
|
||||
SLABS_SIZE_TOTAL, // ul_int "
|
||||
|
||||
SLABNODE_NAME, // str /proc/slabinfo
|
||||
SLABNODE_OBJS, // u_int "
|
||||
SLABNODE_AOBJS, // u_int "
|
||||
SLABNODE_OBJ_SIZE, // u_int "
|
||||
SLABNODE_OBJS_PER_SLAB, // u_int "
|
||||
SLABNODE_PAGES_PER_SLAB, // u_int "
|
||||
SLABNODE_SLABS, // u_int "
|
||||
SLABNODE_ASLABS, // u_int "
|
||||
SLABNODE_USE, // u_int "
|
||||
SLABNODE_SIZE // ul_int "
|
||||
SLABS_DELTA_CACHES_TOTAL, // s_int derived from above
|
||||
SLABS_DELTA_CACHES_ACTIVE, // s_int "
|
||||
SLABS_DELTA_NUM_OBJS, // s_int "
|
||||
SLABS_DELTA_ACTIVE_OBJS, // s_int "
|
||||
SLABS_DELTA_OBJ_SIZE_AVG, // s_int "
|
||||
SLABS_DELTA_OBJ_SIZE_MIN, // s_int "
|
||||
SLABS_DELTA_OBJ_SIZE_MAX, // s_int "
|
||||
SLABS_DELTA_NUMS_SLABS, // s_int "
|
||||
SLABS_DELTA_ACTIVE_SLABS, // s_int "
|
||||
SLABS_DELTA_PAGES_TOTAL, // s_int "
|
||||
SLABS_DELTA_SIZE_ACTIVE, // s_int "
|
||||
SLABS_DELTA_SIZE_TOTAL // s_int "
|
||||
};
|
||||
|
||||
enum slabinfo_sort_order {
|
||||
|
@ -43,7 +43,7 @@ enum stat_item {
|
||||
STAT_TIC_GUEST, // ull_int "
|
||||
STAT_TIC_GUEST_NICE, // ull_int "
|
||||
|
||||
STAT_TIC_DELTA_USER, // sl_int dervied from above
|
||||
STAT_TIC_DELTA_USER, // sl_int derived from above
|
||||
STAT_TIC_DELTA_NICE, // sl_int "
|
||||
STAT_TIC_DELTA_SYSTEM, // sl_int "
|
||||
STAT_TIC_DELTA_IDLE, // sl_int "
|
||||
@ -60,7 +60,7 @@ enum stat_item {
|
||||
STAT_TIC_SUM_BUSY, // ull_int derived from SUM_TOTAL - SUM_IDLE tics
|
||||
STAT_TIC_SUM_SYSTEM, // ull_int derived from SUM_BUSY - SUM_USER tics
|
||||
|
||||
STAT_TIC_SUM_DELTA_TOTAL, // sl_int dervied from above
|
||||
STAT_TIC_SUM_DELTA_TOTAL, // sl_int derived from above
|
||||
STAT_TIC_SUM_DELTA_IDLE, // sl_int "
|
||||
STAT_TIC_SUM_DELTA_USER, // sl_int "
|
||||
STAT_TIC_SUM_DELTA_BUSY, // sl_int "
|
||||
@ -73,7 +73,7 @@ enum stat_item {
|
||||
STAT_SYS_PROC_RUNNING, // ul_int "
|
||||
STAT_SYS_TIME_OF_BOOT, // ul_int "
|
||||
|
||||
STAT_SYS_DELTA_CTX_SWITCHES, // s_int dervied from above
|
||||
STAT_SYS_DELTA_CTX_SWITCHES, // s_int derived from above
|
||||
STAT_SYS_DELTA_INTERRUPTS, // s_int "
|
||||
STAT_SYS_DELTA_PROC_BLOCKED, // s_int "
|
||||
STAT_SYS_DELTA_PROC_CREATED, // s_int "
|
||||
|
1178
proc/vmstat.c
1178
proc/vmstat.c
File diff suppressed because it is too large
Load Diff
522
proc/vmstat.h
522
proc/vmstat.h
@ -29,247 +29,289 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
enum vmstat_item {
|
||||
VMSTAT_noop, // ( never altered )
|
||||
VMSTAT_extra, // ( reset to zero )
|
||||
// returns origin, see proc(5)
|
||||
// ------- -------------------
|
||||
VMSTAT_ALLOCSTALL, // ul_int /proc/vmstat
|
||||
VMSTAT_BALLOON_DEFLATE, // ul_int "
|
||||
VMSTAT_BALLOON_INFLATE, // ul_int "
|
||||
VMSTAT_BALLOON_MIGRATE, // ul_int "
|
||||
VMSTAT_COMPACT_FAIL, // ul_int "
|
||||
VMSTAT_COMPACT_FREE_SCANNED, // ul_int "
|
||||
VMSTAT_COMPACT_ISOLATED, // ul_int "
|
||||
VMSTAT_COMPACT_MIGRATE_SCANNED, // ul_int "
|
||||
VMSTAT_COMPACT_STALL, // ul_int "
|
||||
VMSTAT_COMPACT_SUCCESS, // ul_int "
|
||||
VMSTAT_DROP_PAGECACHE, // ul_int "
|
||||
VMSTAT_DROP_SLAB, // ul_int "
|
||||
VMSTAT_HTLB_BUDDY_ALLOC_FAIL, // ul_int "
|
||||
VMSTAT_HTLB_BUDDY_ALLOC_SUCCESS, // ul_int "
|
||||
VMSTAT_KSWAPD_HIGH_WMARK_HIT_QUICKLY, // ul_int "
|
||||
VMSTAT_KSWAPD_INODESTEAL, // ul_int "
|
||||
VMSTAT_KSWAPD_LOW_WMARK_HIT_QUICKLY, // ul_int "
|
||||
VMSTAT_NR_ACTIVE_ANON, // ul_int "
|
||||
VMSTAT_NR_ACTIVE_FILE, // ul_int "
|
||||
VMSTAT_NR_ALLOC_BATCH, // ul_int "
|
||||
VMSTAT_NR_ANON_PAGES, // ul_int "
|
||||
VMSTAT_NR_ANON_TRANSPARENT_HUGEPAGES, // ul_int "
|
||||
VMSTAT_NR_BOUNCE, // ul_int "
|
||||
VMSTAT_NR_DIRTIED, // ul_int "
|
||||
VMSTAT_NR_DIRTY, // ul_int "
|
||||
VMSTAT_NR_DIRTY_BACKGROUND_THRESHOLD, // ul_int "
|
||||
VMSTAT_NR_DIRTY_THRESHOLD, // ul_int "
|
||||
VMSTAT_NR_FILE_PAGES, // ul_int "
|
||||
VMSTAT_NR_FREE_CMA, // ul_int "
|
||||
VMSTAT_NR_FREE_PAGES, // ul_int "
|
||||
VMSTAT_NR_INACTIVE_ANON, // ul_int "
|
||||
VMSTAT_NR_INACTIVE_FILE, // ul_int "
|
||||
VMSTAT_NR_ISOLATED_ANON, // ul_int "
|
||||
VMSTAT_NR_ISOLATED_FILE, // ul_int "
|
||||
VMSTAT_NR_KERNEL_STACK, // ul_int "
|
||||
VMSTAT_NR_MAPPED, // ul_int "
|
||||
VMSTAT_NR_MLOCK, // ul_int "
|
||||
VMSTAT_NR_PAGES_SCANNED, // ul_int "
|
||||
VMSTAT_NR_PAGE_TABLE_PAGES, // ul_int "
|
||||
VMSTAT_NR_SHMEM, // ul_int "
|
||||
VMSTAT_NR_SLAB_RECLAIMABLE, // ul_int "
|
||||
VMSTAT_NR_SLAB_UNRECLAIMABLE, // ul_int "
|
||||
VMSTAT_NR_UNEVICTABLE, // ul_int "
|
||||
VMSTAT_NR_UNSTABLE, // ul_int "
|
||||
VMSTAT_NR_VMSCAN_IMMEDIATE_RECLAIM, // ul_int "
|
||||
VMSTAT_NR_VMSCAN_WRITE, // ul_int "
|
||||
VMSTAT_NR_WRITEBACK, // ul_int "
|
||||
VMSTAT_NR_WRITEBACK_TEMP, // ul_int "
|
||||
VMSTAT_NR_WRITTEN, // ul_int "
|
||||
VMSTAT_NUMA_FOREIGN, // ul_int "
|
||||
VMSTAT_NUMA_HINT_FAULTS, // ul_int "
|
||||
VMSTAT_NUMA_HINT_FAULTS_LOCAL, // ul_int "
|
||||
VMSTAT_NUMA_HIT, // ul_int "
|
||||
VMSTAT_NUMA_HUGE_PTE_UPDATES, // ul_int "
|
||||
VMSTAT_NUMA_INTERLEAVE, // ul_int "
|
||||
VMSTAT_NUMA_LOCAL, // ul_int "
|
||||
VMSTAT_NUMA_MISS, // ul_int "
|
||||
VMSTAT_NUMA_OTHER, // ul_int "
|
||||
VMSTAT_NUMA_PAGES_MIGRATED, // ul_int "
|
||||
VMSTAT_NUMA_PTE_UPDATES, // ul_int "
|
||||
VMSTAT_PAGEOUTRUN, // ul_int "
|
||||
VMSTAT_PGACTIVATE, // ul_int "
|
||||
VMSTAT_PGALLOC_DMA, // ul_int "
|
||||
VMSTAT_PGALLOC_DMA32, // ul_int "
|
||||
VMSTAT_PGALLOC_MOVABLE, // ul_int "
|
||||
VMSTAT_PGALLOC_NORMAL, // ul_int "
|
||||
VMSTAT_PGDEACTIVATE, // ul_int "
|
||||
VMSTAT_PGFAULT, // ul_int "
|
||||
VMSTAT_PGFREE, // ul_int "
|
||||
VMSTAT_PGINODESTEAL, // ul_int "
|
||||
VMSTAT_PGMAJFAULT, // ul_int "
|
||||
VMSTAT_PGMIGRATE_FAIL, // ul_int "
|
||||
VMSTAT_PGMIGRATE_SUCCESS, // ul_int "
|
||||
VMSTAT_PGPGIN, // ul_int "
|
||||
VMSTAT_PGPGOUT, // ul_int "
|
||||
VMSTAT_PGREFILL_DMA, // ul_int "
|
||||
VMSTAT_PGREFILL_DMA32, // ul_int "
|
||||
VMSTAT_PGREFILL_MOVABLE, // ul_int "
|
||||
VMSTAT_PGREFILL_NORMAL, // ul_int "
|
||||
VMSTAT_PGROTATED, // ul_int "
|
||||
VMSTAT_PGSCAN_DIRECT_DMA, // ul_int "
|
||||
VMSTAT_PGSCAN_DIRECT_DMA32, // ul_int "
|
||||
VMSTAT_PGSCAN_DIRECT_MOVABLE, // ul_int "
|
||||
VMSTAT_PGSCAN_DIRECT_NORMAL, // ul_int "
|
||||
VMSTAT_PGSCAN_DIRECT_THROTTLE, // ul_int "
|
||||
VMSTAT_PGSCAN_KSWAPD_DMA, // ul_int "
|
||||
VMSTAT_PGSCAN_KSWAPD_DMA32, // ul_int "
|
||||
VMSTAT_PGSCAN_KSWAPD_MOVEABLE, // ul_int "
|
||||
VMSTAT_PGSCAN_KSWAPD_NORMAL, // ul_int "
|
||||
VMSTAT_PGSTEAL_DIRECT_DMA, // ul_int "
|
||||
VMSTAT_PGSTEAL_DIRECT_DMA32, // ul_int "
|
||||
VMSTAT_PGSTEAL_DIRECT_MOVABLE, // ul_int "
|
||||
VMSTAT_PGSTEAL_DIRECT_NORMAL, // ul_int "
|
||||
VMSTAT_PGSTEAL_KSWAPD_DMA, // ul_int "
|
||||
VMSTAT_PGSTEAL_KSWAPD_DMA32, // ul_int "
|
||||
VMSTAT_PGSTEAL_KSWAPD_MOVABLE, // ul_int "
|
||||
VMSTAT_PGSTEAL_KSWAPD_NORMAL, // ul_int "
|
||||
VMSTAT_PSWPIN, // ul_int "
|
||||
VMSTAT_PSWPOUT, // ul_int "
|
||||
VMSTAT_SLABS_SCANNED, // ul_int "
|
||||
VMSTAT_THP_COLLAPSE_ALLOC, // ul_int "
|
||||
VMSTAT_THP_COLLAPSE_ALLOC_FAILED, // ul_int "
|
||||
VMSTAT_THP_FAULT_ALLOC, // ul_int "
|
||||
VMSTAT_THP_FAULT_FALLBACK, // ul_int "
|
||||
VMSTAT_THP_SPLIT, // ul_int "
|
||||
VMSTAT_THP_ZERO_PAGE_ALLOC, // ul_int "
|
||||
VMSTAT_THP_ZERO_PAGE_ALLOC_FAILED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_CLEARED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_CULLED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_MLOCKED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_MUNLOCKED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_RESCUED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_SCANNED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_STRANDED, // ul_int "
|
||||
VMSTAT_WORKINGSET_ACTIVATE, // ul_int "
|
||||
VMSTAT_WORKINGSET_NODERECLAIM, // ul_int "
|
||||
VMSTAT_WORKINGSET_REFAULT, // ul_int "
|
||||
VMSTAT_ZONE_RECLAIM_FAILED, // ul_int "
|
||||
VMSTAT_noop, // ( never altered )
|
||||
VMSTAT_extra, // ( reset to zero )
|
||||
// returns origin, see proc(5)
|
||||
// ------- -------------------
|
||||
VMSTAT_ALLOCSTALL_DMA, // ul_int /proc/vmstat
|
||||
VMSTAT_ALLOCSTALL_DMA32, // ul_int "
|
||||
VMSTAT_ALLOCSTALL_HIGH, // ul_int "
|
||||
VMSTAT_ALLOCSTALL_MOVABLE, // ul_int "
|
||||
VMSTAT_ALLOCSTALL_NORMAL, // ul_int "
|
||||
VMSTAT_BALLOON_DEFLATE, // ul_int "
|
||||
VMSTAT_BALLOON_INFLATE, // ul_int "
|
||||
VMSTAT_BALLOON_MIGRATE, // ul_int "
|
||||
VMSTAT_COMPACT_DAEMON_FREE_SCANNED, // ul_int "
|
||||
VMSTAT_COMPACT_DAEMON_MIGRATE_SCANNED, // ul_int "
|
||||
VMSTAT_COMPACT_DAEMON_WAKE, // ul_int "
|
||||
VMSTAT_COMPACT_FAIL, // ul_int "
|
||||
VMSTAT_COMPACT_FREE_SCANNED, // ul_int "
|
||||
VMSTAT_COMPACT_ISOLATED, // ul_int "
|
||||
VMSTAT_COMPACT_MIGRATE_SCANNED, // ul_int "
|
||||
VMSTAT_COMPACT_STALL, // ul_int "
|
||||
VMSTAT_COMPACT_SUCCESS, // ul_int "
|
||||
VMSTAT_DROP_PAGECACHE, // ul_int "
|
||||
VMSTAT_DROP_SLAB, // ul_int "
|
||||
VMSTAT_HTLB_BUDDY_ALLOC_FAIL, // ul_int "
|
||||
VMSTAT_HTLB_BUDDY_ALLOC_SUCCESS, // ul_int "
|
||||
VMSTAT_KSWAPD_HIGH_WMARK_HIT_QUICKLY, // ul_int "
|
||||
VMSTAT_KSWAPD_INODESTEAL, // ul_int "
|
||||
VMSTAT_KSWAPD_LOW_WMARK_HIT_QUICKLY, // ul_int "
|
||||
VMSTAT_NR_ACTIVE_ANON, // ul_int "
|
||||
VMSTAT_NR_ACTIVE_FILE, // ul_int "
|
||||
VMSTAT_NR_ANON_PAGES, // ul_int "
|
||||
VMSTAT_NR_ANON_TRANSPARENT_HUGEPAGES, // ul_int "
|
||||
VMSTAT_NR_BOUNCE, // ul_int "
|
||||
VMSTAT_NR_DIRTIED, // ul_int "
|
||||
VMSTAT_NR_DIRTY, // ul_int "
|
||||
VMSTAT_NR_DIRTY_BACKGROUND_THRESHOLD, // ul_int "
|
||||
VMSTAT_NR_DIRTY_THRESHOLD, // ul_int "
|
||||
VMSTAT_NR_FILE_PAGES, // ul_int "
|
||||
VMSTAT_NR_FREE_CMA, // ul_int "
|
||||
VMSTAT_NR_FREE_PAGES, // ul_int "
|
||||
VMSTAT_NR_INACTIVE_ANON, // ul_int "
|
||||
VMSTAT_NR_INACTIVE_FILE, // ul_int "
|
||||
VMSTAT_NR_ISOLATED_ANON, // ul_int "
|
||||
VMSTAT_NR_ISOLATED_FILE, // ul_int "
|
||||
VMSTAT_NR_KERNEL_MISC_RECLAIMABLE, // ul_int "
|
||||
VMSTAT_NR_KERNEL_STACK, // ul_int "
|
||||
VMSTAT_NR_MAPPED, // ul_int "
|
||||
VMSTAT_NR_MLOCK, // ul_int "
|
||||
VMSTAT_NR_PAGE_TABLE_PAGES, // ul_int "
|
||||
VMSTAT_NR_SHMEM, // ul_int "
|
||||
VMSTAT_NR_SHMEM_HUGEPAGES, // ul_int "
|
||||
VMSTAT_NR_SHMEM_PMDMAPPED, // ul_int "
|
||||
VMSTAT_NR_SLAB_RECLAIMABLE, // ul_int "
|
||||
VMSTAT_NR_SLAB_UNRECLAIMABLE, // ul_int "
|
||||
VMSTAT_NR_UNEVICTABLE, // ul_int "
|
||||
VMSTAT_NR_UNSTABLE, // ul_int "
|
||||
VMSTAT_NR_VMSCAN_IMMEDIATE_RECLAIM, // ul_int "
|
||||
VMSTAT_NR_VMSCAN_WRITE, // ul_int "
|
||||
VMSTAT_NR_WRITEBACK, // ul_int "
|
||||
VMSTAT_NR_WRITEBACK_TEMP, // ul_int "
|
||||
VMSTAT_NR_WRITTEN, // ul_int "
|
||||
VMSTAT_NR_ZONE_ACTIVE_ANON, // ul_int "
|
||||
VMSTAT_NR_ZONE_ACTIVE_FILE, // ul_int "
|
||||
VMSTAT_NR_ZONE_INACTIVE_ANON, // ul_int "
|
||||
VMSTAT_NR_ZONE_INACTIVE_FILE, // ul_int "
|
||||
VMSTAT_NR_ZONE_UNEVICTABLE, // ul_int "
|
||||
VMSTAT_NR_ZONE_WRITE_PENDING, // ul_int "
|
||||
VMSTAT_NR_ZSPAGES, // ul_int "
|
||||
VMSTAT_NUMA_FOREIGN, // ul_int "
|
||||
VMSTAT_NUMA_HINT_FAULTS, // ul_int "
|
||||
VMSTAT_NUMA_HINT_FAULTS_LOCAL, // ul_int "
|
||||
VMSTAT_NUMA_HIT, // ul_int "
|
||||
VMSTAT_NUMA_HUGE_PTE_UPDATES, // ul_int "
|
||||
VMSTAT_NUMA_INTERLEAVE, // ul_int "
|
||||
VMSTAT_NUMA_LOCAL, // ul_int "
|
||||
VMSTAT_NUMA_MISS, // ul_int "
|
||||
VMSTAT_NUMA_OTHER, // ul_int "
|
||||
VMSTAT_NUMA_PAGES_MIGRATED, // ul_int "
|
||||
VMSTAT_NUMA_PTE_UPDATES, // ul_int "
|
||||
VMSTAT_OOM_KILL, // ul_int "
|
||||
VMSTAT_PAGEOUTRUN, // ul_int "
|
||||
VMSTAT_PGACTIVATE, // ul_int "
|
||||
VMSTAT_PGALLOC_DMA, // ul_int "
|
||||
VMSTAT_PGALLOC_DMA32, // ul_int "
|
||||
VMSTAT_PGALLOC_HIGH, // ul_int "
|
||||
VMSTAT_PGALLOC_MOVABLE, // ul_int "
|
||||
VMSTAT_PGALLOC_NORMAL, // ul_int "
|
||||
VMSTAT_PGDEACTIVATE, // ul_int "
|
||||
VMSTAT_PGFAULT, // ul_int "
|
||||
VMSTAT_PGFREE, // ul_int "
|
||||
VMSTAT_PGINODESTEAL, // ul_int "
|
||||
VMSTAT_PGLAZYFREE, // ul_int "
|
||||
VMSTAT_PGLAZYFREED, // ul_int "
|
||||
VMSTAT_PGMAJFAULT, // ul_int "
|
||||
VMSTAT_PGMIGRATE_FAIL, // ul_int "
|
||||
VMSTAT_PGMIGRATE_SUCCESS, // ul_int "
|
||||
VMSTAT_PGPGIN, // ul_int "
|
||||
VMSTAT_PGPGOUT, // ul_int "
|
||||
VMSTAT_PGREFILL, // ul_int "
|
||||
VMSTAT_PGROTATED, // ul_int "
|
||||
VMSTAT_PGSCAN_DIRECT, // ul_int "
|
||||
VMSTAT_PGSCAN_DIRECT_THROTTLE, // ul_int "
|
||||
VMSTAT_PGSCAN_KSWAPD, // ul_int "
|
||||
VMSTAT_PGSKIP_DMA, // ul_int "
|
||||
VMSTAT_PGSKIP_DMA32, // ul_int "
|
||||
VMSTAT_PGSKIP_HIGH, // ul_int "
|
||||
VMSTAT_PGSKIP_MOVABLE, // ul_int "
|
||||
VMSTAT_PGSKIP_NORMAL, // ul_int "
|
||||
VMSTAT_PGSTEAL_DIRECT, // ul_int "
|
||||
VMSTAT_PGSTEAL_KSWAPD, // ul_int "
|
||||
VMSTAT_PSWPIN, // ul_int "
|
||||
VMSTAT_PSWPOUT, // ul_int "
|
||||
VMSTAT_SLABS_SCANNED, // ul_int "
|
||||
VMSTAT_SWAP_RA, // ul_int "
|
||||
VMSTAT_SWAP_RA_HIT, // ul_int "
|
||||
VMSTAT_THP_COLLAPSE_ALLOC, // ul_int "
|
||||
VMSTAT_THP_COLLAPSE_ALLOC_FAILED, // ul_int "
|
||||
VMSTAT_THP_DEFERRED_SPLIT_PAGE, // ul_int "
|
||||
VMSTAT_THP_FAULT_ALLOC, // ul_int "
|
||||
VMSTAT_THP_FAULT_FALLBACK, // ul_int "
|
||||
VMSTAT_THP_FILE_ALLOC, // ul_int "
|
||||
VMSTAT_THP_FILE_MAPPED, // ul_int "
|
||||
VMSTAT_THP_SPLIT_PAGE, // ul_int "
|
||||
VMSTAT_THP_SPLIT_PAGE_FAILED, // ul_int "
|
||||
VMSTAT_THP_SPLIT_PMD, // ul_int "
|
||||
VMSTAT_THP_SPLIT_PUD, // ul_int "
|
||||
VMSTAT_THP_SWPOUT, // ul_int "
|
||||
VMSTAT_THP_SWPOUT_FALLBACK, // ul_int "
|
||||
VMSTAT_THP_ZERO_PAGE_ALLOC, // ul_int "
|
||||
VMSTAT_THP_ZERO_PAGE_ALLOC_FAILED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_CLEARED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_CULLED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_MLOCKED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_MUNLOCKED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_RESCUED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_SCANNED, // ul_int "
|
||||
VMSTAT_UNEVICTABLE_PGS_STRANDED, // ul_int "
|
||||
VMSTAT_WORKINGSET_ACTIVATE, // ul_int "
|
||||
VMSTAT_WORKINGSET_NODERECLAIM, // ul_int "
|
||||
VMSTAT_WORKINGSET_NODES, // ul_int "
|
||||
VMSTAT_WORKINGSET_REFAULT, // ul_int "
|
||||
VMSTAT_WORKINGSET_RESTORE, // ul_int "
|
||||
VMSTAT_ZONE_RECLAIM_FAILED, // ul_int "
|
||||
|
||||
VMSTAT_DELTA_ALLOCSTALL, // sl_int dervied from above
|
||||
VMSTAT_DELTA_BALLOON_DEFLATE, // sl_int "
|
||||
VMSTAT_DELTA_BALLOON_INFLATE, // sl_int "
|
||||
VMSTAT_DELTA_BALLOON_MIGRATE, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_FAIL, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_FREE_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_ISOLATED, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_MIGRATE_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_STALL, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_SUCCESS, // sl_int "
|
||||
VMSTAT_DELTA_DROP_PAGECACHE, // sl_int "
|
||||
VMSTAT_DELTA_DROP_SLAB, // sl_int "
|
||||
VMSTAT_DELTA_HTLB_BUDDY_ALLOC_FAIL, // sl_int "
|
||||
VMSTAT_DELTA_HTLB_BUDDY_ALLOC_SUCCESS, // sl_int "
|
||||
VMSTAT_DELTA_KSWAPD_HIGH_WMARK_HIT_QUICKLY, // sl_int "
|
||||
VMSTAT_DELTA_KSWAPD_INODESTEAL, // sl_int "
|
||||
VMSTAT_DELTA_KSWAPD_LOW_WMARK_HIT_QUICKLY, // sl_int "
|
||||
VMSTAT_DELTA_NR_ACTIVE_ANON, // sl_int "
|
||||
VMSTAT_DELTA_NR_ACTIVE_FILE, // sl_int "
|
||||
VMSTAT_DELTA_NR_ALLOC_BATCH, // sl_int "
|
||||
VMSTAT_DELTA_NR_ANON_PAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_ANON_TRANSPARENT_HUGEPAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_BOUNCE, // sl_int "
|
||||
VMSTAT_DELTA_NR_DIRTIED, // sl_int "
|
||||
VMSTAT_DELTA_NR_DIRTY, // sl_int "
|
||||
VMSTAT_DELTA_NR_DIRTY_BACKGROUND_THRESHOLD, // sl_int "
|
||||
VMSTAT_DELTA_NR_DIRTY_THRESHOLD, // sl_int "
|
||||
VMSTAT_DELTA_NR_FILE_PAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_FREE_CMA, // sl_int "
|
||||
VMSTAT_DELTA_NR_FREE_PAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_INACTIVE_ANON, // sl_int "
|
||||
VMSTAT_DELTA_NR_INACTIVE_FILE, // sl_int "
|
||||
VMSTAT_DELTA_NR_ISOLATED_ANON, // sl_int "
|
||||
VMSTAT_DELTA_NR_ISOLATED_FILE, // sl_int "
|
||||
VMSTAT_DELTA_NR_KERNEL_STACK, // sl_int "
|
||||
VMSTAT_DELTA_NR_MAPPED, // sl_int "
|
||||
VMSTAT_DELTA_NR_MLOCK, // sl_int "
|
||||
VMSTAT_DELTA_NR_PAGES_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_NR_PAGE_TABLE_PAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_SHMEM, // sl_int "
|
||||
VMSTAT_DELTA_NR_SLAB_RECLAIMABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_SLAB_UNRECLAIMABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_UNEVICTABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_UNSTABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_VMSCAN_IMMEDIATE_RECLAIM, // sl_int "
|
||||
VMSTAT_DELTA_NR_VMSCAN_WRITE, // sl_int "
|
||||
VMSTAT_DELTA_NR_WRITEBACK, // sl_int "
|
||||
VMSTAT_DELTA_NR_WRITEBACK_TEMP, // sl_int "
|
||||
VMSTAT_DELTA_NR_WRITTEN, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_FOREIGN, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_HINT_FAULTS, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_HINT_FAULTS_LOCAL, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_HIT, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_HUGE_PTE_UPDATES, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_INTERLEAVE, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_LOCAL, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_MISS, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_OTHER, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_PAGES_MIGRATED, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_PTE_UPDATES, // sl_int "
|
||||
VMSTAT_DELTA_PAGEOUTRUN, // sl_int "
|
||||
VMSTAT_DELTA_PGACTIVATE, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_DMA, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_MOVABLE, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_PGDEACTIVATE, // sl_int "
|
||||
VMSTAT_DELTA_PGFAULT, // sl_int "
|
||||
VMSTAT_DELTA_PGFREE, // sl_int "
|
||||
VMSTAT_DELTA_PGINODESTEAL, // sl_int "
|
||||
VMSTAT_DELTA_PGMAJFAULT, // sl_int "
|
||||
VMSTAT_DELTA_PGMIGRATE_FAIL, // sl_int "
|
||||
VMSTAT_DELTA_PGMIGRATE_SUCCESS, // sl_int "
|
||||
VMSTAT_DELTA_PGPGIN, // sl_int "
|
||||
VMSTAT_DELTA_PGPGOUT, // sl_int "
|
||||
VMSTAT_DELTA_PGREFILL_DMA, // sl_int "
|
||||
VMSTAT_DELTA_PGREFILL_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_PGREFILL_MOVABLE, // sl_int "
|
||||
VMSTAT_DELTA_PGREFILL_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_PGROTATED, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_DIRECT_DMA, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_DIRECT_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_DIRECT_MOVABLE, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_DIRECT_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_DIRECT_THROTTLE, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_KSWAPD_DMA, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_KSWAPD_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_KSWAPD_MOVEABLE, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_KSWAPD_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_DIRECT_DMA, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_DIRECT_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_DIRECT_MOVABLE, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_DIRECT_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_KSWAPD_DMA, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_KSWAPD_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_KSWAPD_MOVABLE, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_KSWAPD_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_PSWPIN, // sl_int "
|
||||
VMSTAT_DELTA_PSWPOUT, // sl_int "
|
||||
VMSTAT_DELTA_SLABS_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_THP_COLLAPSE_ALLOC, // sl_int "
|
||||
VMSTAT_DELTA_THP_COLLAPSE_ALLOC_FAILED, // sl_int "
|
||||
VMSTAT_DELTA_THP_FAULT_ALLOC, // sl_int "
|
||||
VMSTAT_DELTA_THP_FAULT_FALLBACK, // sl_int "
|
||||
VMSTAT_DELTA_THP_SPLIT, // sl_int "
|
||||
VMSTAT_DELTA_THP_ZERO_PAGE_ALLOC, // sl_int "
|
||||
VMSTAT_DELTA_THP_ZERO_PAGE_ALLOC_FAILED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_CLEARED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_CULLED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_MLOCKED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_MUNLOCKED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_RESCUED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_STRANDED, // sl_int "
|
||||
VMSTAT_DELTA_WORKINGSET_ACTIVATE, // sl_int "
|
||||
VMSTAT_DELTA_WORKINGSET_NODERECLAIM, // sl_int "
|
||||
VMSTAT_DELTA_WORKINGSET_REFAULT, // sl_int "
|
||||
VMSTAT_DELTA_ZONE_RECLAIM_FAILED // sl_int "
|
||||
VMSTAT_DELTA_ALLOCSTALL_DMA, // sl_int derived from above
|
||||
VMSTAT_DELTA_ALLOCSTALL_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_ALLOCSTALL_HIGH, // sl_int "
|
||||
VMSTAT_DELTA_ALLOCSTALL_MOVABLE, // sl_int "
|
||||
VMSTAT_DELTA_ALLOCSTALL_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_BALLOON_DEFLATE, // sl_int "
|
||||
VMSTAT_DELTA_BALLOON_INFLATE, // sl_int "
|
||||
VMSTAT_DELTA_BALLOON_MIGRATE, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_DAEMON_FREE_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_DAEMON_MIGRATE_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_DAEMON_WAKE, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_FAIL, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_FREE_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_ISOLATED, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_MIGRATE_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_STALL, // sl_int "
|
||||
VMSTAT_DELTA_COMPACT_SUCCESS, // sl_int "
|
||||
VMSTAT_DELTA_DROP_PAGECACHE, // sl_int "
|
||||
VMSTAT_DELTA_DROP_SLAB, // sl_int "
|
||||
VMSTAT_DELTA_HTLB_BUDDY_ALLOC_FAIL, // sl_int "
|
||||
VMSTAT_DELTA_HTLB_BUDDY_ALLOC_SUCCESS, // sl_int "
|
||||
VMSTAT_DELTA_KSWAPD_HIGH_WMARK_HIT_QUICKLY, // sl_int "
|
||||
VMSTAT_DELTA_KSWAPD_INODESTEAL, // sl_int "
|
||||
VMSTAT_DELTA_KSWAPD_LOW_WMARK_HIT_QUICKLY, // sl_int "
|
||||
VMSTAT_DELTA_NR_ACTIVE_ANON, // sl_int "
|
||||
VMSTAT_DELTA_NR_ACTIVE_FILE, // sl_int "
|
||||
VMSTAT_DELTA_NR_ANON_PAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_ANON_TRANSPARENT_HUGEPAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_BOUNCE, // sl_int "
|
||||
VMSTAT_DELTA_NR_DIRTIED, // sl_int "
|
||||
VMSTAT_DELTA_NR_DIRTY, // sl_int "
|
||||
VMSTAT_DELTA_NR_DIRTY_BACKGROUND_THRESHOLD, // sl_int "
|
||||
VMSTAT_DELTA_NR_DIRTY_THRESHOLD, // sl_int "
|
||||
VMSTAT_DELTA_NR_FILE_PAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_FREE_CMA, // sl_int "
|
||||
VMSTAT_DELTA_NR_FREE_PAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_INACTIVE_ANON, // sl_int "
|
||||
VMSTAT_DELTA_NR_INACTIVE_FILE, // sl_int "
|
||||
VMSTAT_DELTA_NR_ISOLATED_ANON, // sl_int "
|
||||
VMSTAT_DELTA_NR_ISOLATED_FILE, // sl_int "
|
||||
VMSTAT_DELTA_NR_KERNEL_MISC_RECLAIMABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_KERNEL_STACK, // sl_int "
|
||||
VMSTAT_DELTA_NR_MAPPED, // sl_int "
|
||||
VMSTAT_DELTA_NR_MLOCK, // sl_int "
|
||||
VMSTAT_DELTA_NR_PAGE_TABLE_PAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_SHMEM, // sl_int "
|
||||
VMSTAT_DELTA_NR_SHMEM_HUGEPAGES, // sl_int "
|
||||
VMSTAT_DELTA_NR_SHMEM_PMDMAPPED, // sl_int "
|
||||
VMSTAT_DELTA_NR_SLAB_RECLAIMABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_SLAB_UNRECLAIMABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_UNEVICTABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_UNSTABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_VMSCAN_IMMEDIATE_RECLAIM, // sl_int "
|
||||
VMSTAT_DELTA_NR_VMSCAN_WRITE, // sl_int "
|
||||
VMSTAT_DELTA_NR_WRITEBACK, // sl_int "
|
||||
VMSTAT_DELTA_NR_WRITEBACK_TEMP, // sl_int "
|
||||
VMSTAT_DELTA_NR_WRITTEN, // sl_int "
|
||||
VMSTAT_DELTA_NR_ZONE_ACTIVE_ANON, // sl_int "
|
||||
VMSTAT_DELTA_NR_ZONE_ACTIVE_FILE, // sl_int "
|
||||
VMSTAT_DELTA_NR_ZONE_INACTIVE_ANON, // sl_int "
|
||||
VMSTAT_DELTA_NR_ZONE_INACTIVE_FILE, // sl_int "
|
||||
VMSTAT_DELTA_NR_ZONE_UNEVICTABLE, // sl_int "
|
||||
VMSTAT_DELTA_NR_ZONE_WRITE_PENDING, // sl_int "
|
||||
VMSTAT_DELTA_NR_ZSPAGES, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_FOREIGN, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_HINT_FAULTS, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_HINT_FAULTS_LOCAL, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_HIT, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_HUGE_PTE_UPDATES, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_INTERLEAVE, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_LOCAL, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_MISS, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_OTHER, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_PAGES_MIGRATED, // sl_int "
|
||||
VMSTAT_DELTA_NUMA_PTE_UPDATES, // sl_int "
|
||||
VMSTAT_DELTA_OOM_KILL, // sl_int "
|
||||
VMSTAT_DELTA_PAGEOUTRUN, // sl_int "
|
||||
VMSTAT_DELTA_PGACTIVATE, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_DMA, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_HIGH, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_MOVABLE, // sl_int "
|
||||
VMSTAT_DELTA_PGALLOC_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_PGDEACTIVATE, // sl_int "
|
||||
VMSTAT_DELTA_PGFAULT, // sl_int "
|
||||
VMSTAT_DELTA_PGFREE, // sl_int "
|
||||
VMSTAT_DELTA_PGINODESTEAL, // sl_int "
|
||||
VMSTAT_DELTA_PGLAZYFREE, // sl_int "
|
||||
VMSTAT_DELTA_PGLAZYFREED, // sl_int "
|
||||
VMSTAT_DELTA_PGMAJFAULT, // sl_int "
|
||||
VMSTAT_DELTA_PGMIGRATE_FAIL, // sl_int "
|
||||
VMSTAT_DELTA_PGMIGRATE_SUCCESS, // sl_int "
|
||||
VMSTAT_DELTA_PGPGIN, // sl_int "
|
||||
VMSTAT_DELTA_PGPGOUT, // sl_int "
|
||||
VMSTAT_DELTA_PGREFILL, // sl_int "
|
||||
VMSTAT_DELTA_PGROTATED, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_DIRECT, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_DIRECT_THROTTLE, // sl_int "
|
||||
VMSTAT_DELTA_PGSCAN_KSWAPD, // sl_int "
|
||||
VMSTAT_DELTA_PGSKIP_DMA, // sl_int "
|
||||
VMSTAT_DELTA_PGSKIP_DMA32, // sl_int "
|
||||
VMSTAT_DELTA_PGSKIP_HIGH, // sl_int "
|
||||
VMSTAT_DELTA_PGSKIP_MOVABLE, // sl_int "
|
||||
VMSTAT_DELTA_PGSKIP_NORMAL, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_DIRECT, // sl_int "
|
||||
VMSTAT_DELTA_PGSTEAL_KSWAPD, // sl_int "
|
||||
VMSTAT_DELTA_PSWPIN, // sl_int "
|
||||
VMSTAT_DELTA_PSWPOUT, // sl_int "
|
||||
VMSTAT_DELTA_SLABS_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_SWAP_RA, // sl_int "
|
||||
VMSTAT_DELTA_SWAP_RA_HIT, // sl_int "
|
||||
VMSTAT_DELTA_THP_COLLAPSE_ALLOC, // sl_int "
|
||||
VMSTAT_DELTA_THP_COLLAPSE_ALLOC_FAILED, // sl_int "
|
||||
VMSTAT_DELTA_THP_DEFERRED_SPLIT_PAGE, // sl_int "
|
||||
VMSTAT_DELTA_THP_FAULT_ALLOC, // sl_int "
|
||||
VMSTAT_DELTA_THP_FAULT_FALLBACK, // sl_int "
|
||||
VMSTAT_DELTA_THP_FILE_ALLOC, // sl_int "
|
||||
VMSTAT_DELTA_THP_FILE_MAPPED, // sl_int "
|
||||
VMSTAT_DELTA_THP_SPLIT_PAGE, // sl_int "
|
||||
VMSTAT_DELTA_THP_SPLIT_PAGE_FAILED, // sl_int "
|
||||
VMSTAT_DELTA_THP_SPLIT_PMD, // sl_int "
|
||||
VMSTAT_DELTA_THP_SPLIT_PUD, // sl_int "
|
||||
VMSTAT_DELTA_THP_SWPOUT, // sl_int "
|
||||
VMSTAT_DELTA_THP_SWPOUT_FALLBACK, // sl_int "
|
||||
VMSTAT_DELTA_THP_ZERO_PAGE_ALLOC, // sl_int "
|
||||
VMSTAT_DELTA_THP_ZERO_PAGE_ALLOC_FAILED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_CLEARED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_CULLED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_MLOCKED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_MUNLOCKED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_RESCUED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_SCANNED, // sl_int "
|
||||
VMSTAT_DELTA_UNEVICTABLE_PGS_STRANDED, // sl_int "
|
||||
VMSTAT_DELTA_WORKINGSET_ACTIVATE, // sl_int "
|
||||
VMSTAT_DELTA_WORKINGSET_NODERECLAIM, // sl_int "
|
||||
VMSTAT_DELTA_WORKINGSET_NODES, // sl_int "
|
||||
VMSTAT_DELTA_WORKINGSET_REFAULT, // sl_int "
|
||||
VMSTAT_DELTA_WORKINGSET_RESTORE, // sl_int "
|
||||
VMSTAT_DELTA_ZONE_RECLAIM_FAILED // sl_int "
|
||||
};
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user