diff options
Diffstat (limited to 'include/linux/igmp.h')
| -rw-r--r-- | include/linux/igmp.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/include/linux/igmp.h b/include/linux/igmp.h index 93fc2449af10..7d164670f264 100644 --- a/include/linux/igmp.h +++ b/include/linux/igmp.h | |||
| @@ -167,10 +167,10 @@ struct ip_sf_socklist { | |||
| 167 | */ | 167 | */ |
| 168 | 168 | ||
| 169 | struct ip_mc_socklist { | 169 | struct ip_mc_socklist { |
| 170 | struct ip_mc_socklist *next; | 170 | struct ip_mc_socklist __rcu *next_rcu; |
| 171 | struct ip_mreqn multi; | 171 | struct ip_mreqn multi; |
| 172 | unsigned int sfmode; /* MCAST_{INCLUDE,EXCLUDE} */ | 172 | unsigned int sfmode; /* MCAST_{INCLUDE,EXCLUDE} */ |
| 173 | struct ip_sf_socklist *sflist; | 173 | struct ip_sf_socklist __rcu *sflist; |
| 174 | struct rcu_head rcu; | 174 | struct rcu_head rcu; |
| 175 | }; | 175 | }; |
| 176 | 176 | ||
| @@ -186,11 +186,14 @@ struct ip_sf_list { | |||
| 186 | struct ip_mc_list { | 186 | struct ip_mc_list { |
| 187 | struct in_device *interface; | 187 | struct in_device *interface; |
| 188 | __be32 multiaddr; | 188 | __be32 multiaddr; |
| 189 | unsigned int sfmode; | ||
| 189 | struct ip_sf_list *sources; | 190 | struct ip_sf_list *sources; |
| 190 | struct ip_sf_list *tomb; | 191 | struct ip_sf_list *tomb; |
| 191 | unsigned int sfmode; | ||
| 192 | unsigned long sfcount[2]; | 192 | unsigned long sfcount[2]; |
| 193 | struct ip_mc_list *next; | 193 | union { |
| 194 | struct ip_mc_list *next; | ||
| 195 | struct ip_mc_list __rcu *next_rcu; | ||
| 196 | }; | ||
| 194 | struct timer_list timer; | 197 | struct timer_list timer; |
| 195 | int users; | 198 | int users; |
| 196 | atomic_t refcnt; | 199 | atomic_t refcnt; |
| @@ -201,6 +204,7 @@ struct ip_mc_list { | |||
| 201 | char loaded; | 204 | char loaded; |
| 202 | unsigned char gsquery; /* check source marks? */ | 205 | unsigned char gsquery; /* check source marks? */ |
| 203 | unsigned char crcount; | 206 | unsigned char crcount; |
| 207 | struct rcu_head rcu; | ||
| 204 | }; | 208 | }; |
| 205 | 209 | ||
| 206 | /* V3 exponential field decoding */ | 210 | /* V3 exponential field decoding */ |
