Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1286602
| From | Johannes Weiner <hannes@cmpxchg.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 00/14] mm: memcontrol: account socket memory in unified hierarchy v4-RESEND |
| Date | 2015-12-08 16:40 +0100 |
| Message-ID | <qDswV-48l-7@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
Hi Andrew,
there was some build breakage in CONFIG_ combinations I hadn't tested
in the last revision, so here is a fixed-up resend with minimal CC
list. The only difference to the previous version is a section in
memcontrol.h, but it accumulates throughout the series and would have
been a pain to resolve on your end. So here goes. This also includes
the review tags that Dave and Vlad had sent out in the meantime.
Difference to the original v4:
diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h
index 9a19590..189f04d 100644
--- a/include/linux/memcontrol.h
+++ b/include/linux/memcontrol.h
@@ -702,14 +702,14 @@ static inline void mem_cgroup_wb_stats(struct bdi_writeback *wb,
#endif /* CONFIG_CGROUP_WRITEBACK */
-#ifdef CONFIG_INET
struct sock;
-extern struct static_key_false memcg_sockets_enabled_key;
-#define mem_cgroup_sockets_enabled static_branch_unlikely(&memcg_sockets_enabled_key)
void sock_update_memcg(struct sock *sk);
void sock_release_memcg(struct sock *sk);
bool mem_cgroup_charge_skmem(struct mem_cgroup *memcg, unsigned int nr_pages);
void mem_cgroup_uncharge_skmem(struct mem_cgroup *memcg, unsigned int nr_pages);
+#if defined(CONFIG_MEMCG) && defined(CONFIG_INET)
+extern struct static_key_false memcg_sockets_enabled_key;
+#define mem_cgroup_sockets_enabled static_branch_unlikely(&memcg_sockets_enabled_key)
static inline bool mem_cgroup_under_socket_pressure(struct mem_cgroup *memcg)
{
#ifdef CONFIG_MEMCG_KMEM
@@ -724,7 +724,11 @@ static inline bool mem_cgroup_under_socket_pressure(struct mem_cgroup *memcg)
}
#else
#define mem_cgroup_sockets_enabled 0
-#endif /* CONFIG_INET */
+static inline bool mem_cgroup_under_socket_pressure(struct mem_cgroup *memcg)
+{
+ return false;
+}
+#endif
#ifdef CONFIG_MEMCG_KMEM
extern struct static_key_false memcg_kmem_enabled_key;
diff --git a/include/linux/vmpressure.h b/include/linux/vmpressure.h
index a77b142..3347cc3 100644
--- a/include/linux/vmpressure.h
+++ b/include/linux/vmpressure.h
@@ -43,7 +43,7 @@ extern int vmpressure_register_event(struct mem_cgroup *memcg,
extern void vmpressure_unregister_event(struct mem_cgroup *memcg,
struct eventfd_ctx *eventfd);
#else
-static inline void vmpressure(gfp_t gfp, struct mem_cgroup *memcg,
+static inline void vmpressure(gfp_t gfp, struct mem_cgroup *memcg, bool tree,
unsigned long scanned, unsigned long reclaimed) {}
static inline void vmpressure_prio(gfp_t gfp, struct mem_cgroup *memcg,
int prio) {}
Documentation/kernel-parameters.txt | 4 +
include/linux/memcontrol.h | 75 ++++++---
include/linux/vmpressure.h | 7 +-
include/net/sock.h | 149 ++---------------
include/net/tcp.h | 5 +-
include/net/tcp_memcontrol.h | 1 -
mm/backing-dev.c | 2 +-
mm/memcontrol.c | 302 ++++++++++++++++++++++------------
mm/vmpressure.c | 78 ++++++---
mm/vmscan.c | 10 +-
net/core/sock.c | 78 ++-------
net/ipv4/tcp.c | 3 +-
net/ipv4/tcp_ipv4.c | 9 +-
net/ipv4/tcp_memcontrol.c | 82 ++++-----
net/ipv4/tcp_output.c | 7 +-
net/ipv6/tcp_ipv6.c | 3 -
16 files changed, 391 insertions(+), 424 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH 00/14] mm: memcontrol: account socket memory in unified hierarchy v4-RESEND Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 01/14] mm: memcontrol: export root_mem_cgroup Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 06/14] net: tcp_memcontrol: simplify the per-memcg limit access Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 09/14] mm: memcontrol: generalize the socket accounting jump label Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 05/14] net: tcp_memcontrol: remove dead per-memcg count of allocated sockets Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 02/14] net: tcp_memcontrol: properly detect ancestor socket pressure Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 08/14] net: tcp_memcontrol: simplify linkage between socket and page counter Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 04/14] net: tcp_memcontrol: protect all tcp_memcontrol calls by jump-label Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 11/14] mm: memcontrol: move socket code for unified hierarchy accounting Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
[PATCH 13/14] mm: memcontrol: hook up vmpressure to socket pressure Johannes Weiner <hannes@cmpxchg.org> - 2015-12-08 16:40 +0100
Re: [PATCH 00/14] mm: memcontrol: account socket memory in unified hierarchy v4-RESEND David Miller <davem@davemloft.net> - 2015-12-08 17:30 +0100
[PATCH] mm: memcontrol: only manage socket pressure for CONFIG_INET Arnd Bergmann <arnd@arndb.de> - 2015-12-09 17:40 +0100
Re: [PATCH] mm: memcontrol: only manage socket pressure for CONFIG_INET Johannes Weiner <hannes@cmpxchg.org> - 2015-12-09 20:00 +0100
Re: [PATCH] mm: memcontrol: only manage socket pressure for CONFIG_INET Andrew Morton <akpm@linux-foundation.org> - 2015-12-09 23:30 +0100
Re: [PATCH] mm: memcontrol: only manage socket pressure for CONFIG_INET Johannes Weiner <hannes@cmpxchg.org> - 2015-12-10 00:10 +0100
Re: [PATCH] mm: memcontrol: only manage socket pressure for CONFIG_INET Andrew Morton <akpm@linux-foundation.org> - 2015-12-10 00:20 +0100
[PATCH] mm: memcontrol: MEMCG no longer works with SLOB Arnd Bergmann <arnd@arndb.de> - 2015-12-09 17:40 +0100
Re: [PATCH] mm: memcontrol: MEMCG no longer works with SLOB Johannes Weiner <hannes@cmpxchg.org> - 2015-12-09 21:10 +0100
Re: [PATCH] mm: memcontrol: MEMCG no longer works with SLOB Arnd Bergmann <arnd@arndb.de> - 2015-12-09 22:10 +0100
Re: [PATCH] mm: memcontrol: MEMCG no longer works with SLOB Vladimir Davydov <vdavydov@virtuozzo.com> - 2015-12-10 12:30 +0100
Re: [PATCH 00/14] mm: memcontrol: account socket memory in unified hierarchy v4-RESEND Arnd Bergmann <arnd@arndb.de> - 2015-12-09 17:40 +0100
Re: [PATCH 00/14] mm: memcontrol: account socket memory in unified hierarchy v4-RESEND Johannes Weiner <hannes@cmpxchg.org> - 2015-12-09 19:20 +0100
csiph-web