pmdalinux: add Linux VM KSM same-page-merging metrics
[pcp.git] / src / pmdas / linux / ksm.h
blob0b12e9afc20340569fc90031bd56f0f192ec5288
1 /*
2 * Copyright (c) 2016 Fujitsu.
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
11 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * for more details.
15 typedef struct {
16 /* Number of times that KSM has scanned for duplicated content. */
17 unsigned long full_scans;
18 /* Allows merging across NUMA nodes. */
19 unsigned long merge_across_nodes;
20 /* The number of nodes in the stable tree */
21 unsigned long pages_shared;
22 /* The number of virtual pages that are sharing a single page. */
23 unsigned long pages_sharing;
24 /* Number of pages to scan at a time. */
25 unsigned int pages_to_scan;
26 /* The number of nodes in the unstable tree */
27 unsigned long pages_unshared;
28 /* Number of pages that are candidate to be shared */
29 unsigned long pages_volatile;
30 /* Wheter the KSM is run */
31 int run;
32 /* Milliseconds ksmd should sleep between batches */
33 unsigned int sleep_millisecs;
34 } ksm_info_t;
36 extern int refresh_ksm_info(ksm_info_t *ksm_info);