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
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.