diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2010-11-12 00:46:50 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-11-12 16:18:57 -0500 |
commit | 1d7138de878d1d4210727c1200193e69596f93b3 (patch) | |
tree | f7abb08bfdf35d1e876f93d24ce44072d2f6ed72 /include/net/inet_sock.h | |
parent | f5539b5bfa2e00f2a6fd35731db66142a2f327c0 (diff) |
igmp: RCU conversion of in_dev->mc_list
in_dev->mc_list is protected by one rwlock (in_dev->mc_list_lock).
This can easily be converted to a RCU protection.
Writers hold RTNL, so mc_list_lock is removed, not replaced by a
spinlock.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Cypher Wu <cypher.w@gmail.com>
Cc: Américo Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/inet_sock.h')
-rw-r--r-- | include/net/inet_sock.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/inet_sock.h b/include/net/inet_sock.h index 1989cfd7405f..8945f9fb192a 100644 --- a/include/net/inet_sock.h +++ b/include/net/inet_sock.h | |||
@@ -141,7 +141,7 @@ struct inet_sock { | |||
141 | nodefrag:1; | 141 | nodefrag:1; |
142 | int mc_index; | 142 | int mc_index; |
143 | __be32 mc_addr; | 143 | __be32 mc_addr; |
144 | struct ip_mc_socklist *mc_list; | 144 | struct ip_mc_socklist __rcu *mc_list; |
145 | struct { | 145 | struct { |
146 | unsigned int flags; | 146 | unsigned int flags; |
147 | unsigned int fragsize; | 147 | unsigned int fragsize; |