Thread (15 messages) 15 messages, 5 authors, 2012-02-01

Re: [PATCH 6/6] cls_cgroup: remove redundant rcu_read_lock/unlock

From: Li Zefan <hidden>
Date: 2012-02-01 07:17:19
Also in: cgroups, lkml

Cc: Herbert Xu <redacted>
quoted
diff --git a/net/core/sock.c b/net/core/sock.c
index 213c856..c0bab23 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -1160,9 +1160,7 @@ void sock_update_classid(struct sock *sk)
 {
 	u32 classid;
 
-	rcu_read_lock();  /* doing current task, which cannot vanish. */
 	classid = task_cls_classid(current);
-	rcu_read_unlock();
 	if (classid && classid != sk->sk_classid)
 		sk->sk_classid = classid;
Yes, this seems fine.

Then, I wonder why we do the "if (classid && classid != sk->sk_classid)"

before the :

	sk->sk_classid = classid;

This seems unnecessary checks.
I was wondering about this too. He who added this may provide us with an
answer.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help