Updated with Tizen:Base source codes
[external/procps.git] / proc / slab.h
1 #ifndef _PROC_SLAB_H
2 #define _PROC_SLAB_H
3
4 #define SLAB_INFO_NAME_LEN      64
5
6 struct slab_info {
7         char name[SLAB_INFO_NAME_LEN];  /* name of this cache */
8         struct slab_info *next;
9         unsigned long cache_size;       /* size of entire cache */
10         unsigned nr_objs;               /* number of objects in this cache */
11         unsigned nr_active_objs;        /* number of active objects */
12         unsigned obj_size;              /* size of each object */
13         unsigned objs_per_slab;         /* number of objects per slab */
14         unsigned pages_per_slab;        /* number of pages per slab */
15         unsigned nr_slabs;              /* number of slabs in this cache */
16         unsigned nr_active_slabs;       /* number of active slabs */
17         unsigned use;                   /* percent full: total / active */
18 };
19
20 struct slab_stat {
21         unsigned long total_size;       /* size of all objects */
22         unsigned long active_size;      /* size of all active objects */
23         unsigned nr_objs;               /* number of objects, among all caches */
24         unsigned nr_active_objs;        /* number of active objects, among all caches */
25         unsigned nr_pages;              /* number of pages consumed by all objects */
26         unsigned nr_slabs;              /* number of slabs, among all caches */
27         unsigned nr_active_slabs;       /* number of active slabs, among all caches */
28         unsigned nr_caches;             /* number of caches */
29         unsigned nr_active_caches;      /* number of active caches */
30         unsigned avg_obj_size;          /* average object size */
31         unsigned min_obj_size;          /* size of smallest object */
32         unsigned max_obj_size;          /* size of largest object */
33 };
34
35 extern void put_slabinfo(struct slab_info *);
36 extern void free_slabinfo(struct slab_info *);
37 extern int get_slabinfo(struct slab_info **, struct slab_stat *);
38
39 #endif /* _PROC_SLAB_H */