Blame view
include/linux/vmpressure.h
1.58 KB
70ddf637e memcg: add memory... |
1 2 3 4 5 6 7 8 9 |
#ifndef __LINUX_VMPRESSURE_H #define __LINUX_VMPRESSURE_H #include <linux/mutex.h> #include <linux/list.h> #include <linux/workqueue.h> #include <linux/gfp.h> #include <linux/types.h> #include <linux/cgroup.h> |
fba948078 cgroup, memcg: mo... |
10 |
#include <linux/eventfd.h> |
70ddf637e memcg: add memory... |
11 12 13 14 15 |
struct vmpressure { unsigned long scanned; unsigned long reclaimed; /* The lock is used to keep the scanned/reclaimed above in sync. */ |
22f2020f8 vmpressure: chang... |
16 |
struct spinlock sr_lock; |
70ddf637e memcg: add memory... |
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
/* The list of vmpressure_event structs. */ struct list_head events; /* Have to grab the lock on events traversal or modifications. */ struct mutex events_lock; struct work_struct work; }; struct mem_cgroup; #ifdef CONFIG_MEMCG extern void vmpressure(gfp_t gfp, struct mem_cgroup *memcg, unsigned long scanned, unsigned long reclaimed); extern void vmpressure_prio(gfp_t gfp, struct mem_cgroup *memcg, int prio); extern void vmpressure_init(struct vmpressure *vmpr); |
33cb876e9 vmpressure: make ... |
34 |
extern void vmpressure_cleanup(struct vmpressure *vmpr); |
70ddf637e memcg: add memory... |
35 36 |
extern struct vmpressure *memcg_to_vmpressure(struct mem_cgroup *memcg); extern struct cgroup_subsys_state *vmpressure_to_css(struct vmpressure *vmpr); |
59b6f8734 memcg: make cgrou... |
37 |
extern int vmpressure_register_event(struct mem_cgroup *memcg, |
70ddf637e memcg: add memory... |
38 39 |
struct eventfd_ctx *eventfd, const char *args); |
59b6f8734 memcg: make cgrou... |
40 |
extern void vmpressure_unregister_event(struct mem_cgroup *memcg, |
70ddf637e memcg: add memory... |
41 42 43 44 45 46 47 48 |
struct eventfd_ctx *eventfd); #else static inline void vmpressure(gfp_t gfp, struct mem_cgroup *memcg, unsigned long scanned, unsigned long reclaimed) {} static inline void vmpressure_prio(gfp_t gfp, struct mem_cgroup *memcg, int prio) {} #endif /* CONFIG_MEMCG */ #endif /* __LINUX_VMPRESSURE_H */ |