summary refs log tree commit diff
path: root/kernel/cgroup.c
diff options
context:
space:
mode:
authorLi Zefan <lizf@cn.fujitsu.com>2008-07-25 01:46:54 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-25 10:53:35 -0700
commit7e9abd89cbdf9b73d327d8173343abce9022609b (patch)
tree7e738e46ba5e384fc6bc984196ed2d09a0ea8102 /kernel/cgroup.c
parent9d96d82da437ed5f2053821779ed5d7797ed1f81 (diff)
downloadlinux-7e9abd89cbdf9b73d327d8173343abce9022609b.tar.gz
cgroup: use read lock to guard find_existing_css_set()
The function does not modify anything (except the temporary css template), so
it's sufficient to hold read lock.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Acked-by: Paul Menage <menage@google.com>
Cc: Balbir Singh <balbir@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/cgroup.c')
-rw-r--r--kernel/cgroup.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/cgroup.c b/kernel/cgroup.c
index 15ac0e1e4f4d..f50edadfdd86 100644
--- a/kernel/cgroup.c
+++ b/kernel/cgroup.c
@@ -415,11 +415,11 @@ static struct css_set *find_css_set(
 
 	/* First see if we already have a cgroup group that matches
 	 * the desired set */
-	write_lock(&css_set_lock);
+	read_lock(&css_set_lock);
 	res = find_existing_css_set(oldcg, cgrp, template);
 	if (res)
 		get_css_set(res);
-	write_unlock(&css_set_lock);
+	read_unlock(&css_set_lock);
 
 	if (res)
 		return res;