diff options
author | Glauber Costa <glommer@parallels.com> | 2011-12-11 22:47:04 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-12-13 01:04:10 +0100 |
commit | d1a4c0b37c296e600ffe08edb0db2dc1b8f550d7 (patch) | |
tree | 5c3675582cbbdc99f720aa1dcc1821e26c2be1ab /include/net/tcp_memcontrol.h | |
parent | socket: initial cgroup code. (diff) | |
download | linux-d1a4c0b37c296e600ffe08edb0db2dc1b8f550d7.tar.xz linux-d1a4c0b37c296e600ffe08edb0db2dc1b8f550d7.zip |
tcp memory pressure controls
This patch introduces memory pressure controls for the tcp
protocol. It uses the generic socket memory pressure code
introduced in earlier patches, and fills in the
necessary data in cg_proto struct.
Signed-off-by: Glauber Costa <glommer@parallels.com>
Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujtisu.com>
CC: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/tcp_memcontrol.h')
-rw-r--r-- | include/net/tcp_memcontrol.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/net/tcp_memcontrol.h b/include/net/tcp_memcontrol.h new file mode 100644 index 000000000000..5f5e1582d764 --- /dev/null +++ b/include/net/tcp_memcontrol.h @@ -0,0 +1,17 @@ +#ifndef _TCP_MEMCG_H +#define _TCP_MEMCG_H + +struct tcp_memcontrol { + struct cg_proto cg_proto; + /* per-cgroup tcp memory pressure knobs */ + struct res_counter tcp_memory_allocated; + struct percpu_counter tcp_sockets_allocated; + /* those two are read-mostly, leave them at the end */ + long tcp_prot_mem[3]; + int tcp_memory_pressure; +}; + +struct cg_proto *tcp_proto_cgroup(struct mem_cgroup *memcg); +int tcp_init_cgroup(struct cgroup *cgrp, struct cgroup_subsys *ss); +void tcp_destroy_cgroup(struct cgroup *cgrp, struct cgroup_subsys *ss); +#endif /* _TCP_MEMCG_H */ |