Thread (4 messages) 4 messages, 2 authors, 2016-07-07

Re: [PATCH rebase] mm: fix vm-scalability regression in cgroup-aware workingset code

From: Johannes Weiner <hannes@cmpxchg.org>
Date: 2016-07-07 19:44:19
Also in: linux-mm, lkml
Subsystem: memory management - core, the rest · Maintainers: Andrew Morton, David Hildenbrand, Linus Torvalds

Hi Michal,

[sorry for the delay, I was traveling with no connectivity]

On Mon, Jun 27, 2016 at 03:05:28PM +0200, Michal Hocko wrote:
On Fri 24-06-16 13:51:01, Johannes Weiner wrote:

Acked-by: Michal Hocko <mhocko@suse.com>
Thanks!
Minor note below
quoted
+static inline struct mem_cgroup *page_memcg_rcu(struct page *page)
+{
I guess rcu_read_lock_held() here would be appropriate
quoted
+	return READ_ONCE(page->mem_cgroup);
Agreed.

Andrew, could you please fold this?

From ed49e364e47c933d84533a0d8bd355831b5ca9f1 Mon Sep 17 00:00:00 2001
From: Johannes Weiner <hannes@cmpxchg.org>
Date: Thu, 7 Jul 2016 15:38:26 -0400
Subject: [PATCH] mm: fix vm-scalability regression in cgroup-aware workingset
 code fix

Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
---
 include/linux/mm.h | 2 ++
 1 file changed, 2 insertions(+)
diff --git a/include/linux/mm.h b/include/linux/mm.h
index b21e5f30378e..97065e1f0237 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -975,6 +975,7 @@ static inline struct mem_cgroup *page_memcg(struct page *page)
 }
 static inline struct mem_cgroup *page_memcg_rcu(struct page *page)
 {
+	WARN_ON_ONCE(!rcu_read_lock_held());
 	return READ_ONCE(page->mem_cgroup);
 }
 #else
@@ -984,6 +985,7 @@ static inline struct mem_cgroup *page_memcg(struct page *page)
 }
 static inline struct mem_cgroup *page_memcg_rcu(struct page *page)
 {
+	WARN_ON_ONCE(!rcu_read_lock_held());
 	return NULL;
 }
 #endif
-- 
2.9.0

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help