All other places (both read and assignment) are performed under
seqlock.

https://jira.sw.ru/browse/PSBM-123655

Signed-off-by: Konstantin Khorenko <[email protected]>
---
 mm/memcontrol.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 5be8fbfe0308..ba107b12f314 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -1690,7 +1690,9 @@ struct mem_cgroup *mem_cgroup_iter(struct mem_cgroup 
*root,
                        mz = mem_cgroup_zoneinfo(root, nid, zid);
                        iter = &mz->reclaim_iter[reclaim->priority];
                        if (prev && reclaim->generation != iter->generation) {
+                               write_seqlock(&iter->last_visited_lock);
                                iter->last_visited = NULL;
+                               write_sequnlock(&iter->last_visited_lock);
                                goto out_unlock;
                        }
 
-- 
2.24.3

_______________________________________________
Devel mailing list
[email protected]
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to