Glauber Costa | d1a4c0b | 2011-12-11 21:47:04 +0000 | [diff] [blame] | 1 | #ifndef _TCP_MEMCG_H |
| 2 | #define _TCP_MEMCG_H |
| 3 | |
| 4 | struct tcp_memcontrol { |
| 5 | struct cg_proto cg_proto; |
| 6 | /* per-cgroup tcp memory pressure knobs */ |
| 7 | struct res_counter tcp_memory_allocated; |
| 8 | struct percpu_counter tcp_sockets_allocated; |
| 9 | /* those two are read-mostly, leave them at the end */ |
| 10 | long tcp_prot_mem[3]; |
| 11 | int tcp_memory_pressure; |
| 12 | }; |
| 13 | |
| 14 | struct cg_proto *tcp_proto_cgroup(struct mem_cgroup *memcg); |
Glauber Costa | 1d62e43 | 2012-04-09 19:36:33 -0300 | [diff] [blame] | 15 | int tcp_init_cgroup(struct mem_cgroup *memcg, struct cgroup_subsys *ss); |
| 16 | void tcp_destroy_cgroup(struct mem_cgroup *memcg); |
Glauber Costa | 3aaabe2 | 2011-12-11 21:47:06 +0000 | [diff] [blame] | 17 | unsigned long long tcp_max_memory(const struct mem_cgroup *memcg); |
| 18 | void tcp_prot_mem(struct mem_cgroup *memcg, long val, int idx); |
Glauber Costa | d1a4c0b | 2011-12-11 21:47:04 +0000 | [diff] [blame] | 19 | #endif /* _TCP_MEMCG_H */ |