diff options
Diffstat (limited to 'net/sctp')
-rw-r--r-- | net/sctp/bind_addr.c | 1 | ||||
-rw-r--r-- | net/sctp/ipv6.c | 1 | ||||
-rw-r--r-- | net/sctp/proc.c | 4 | ||||
-rw-r--r-- | net/sctp/protocol.c | 6 | ||||
-rw-r--r-- | net/sctp/socket.c | 2 |
5 files changed, 6 insertions, 8 deletions
diff --git a/net/sctp/bind_addr.c b/net/sctp/bind_addr.c index 13a6fba41077..bef133731683 100644 --- a/net/sctp/bind_addr.c +++ b/net/sctp/bind_addr.c | |||
@@ -186,7 +186,6 @@ int sctp_add_bind_addr(struct sctp_bind_addr *bp, union sctp_addr *new, | |||
186 | addr->valid = 1; | 186 | addr->valid = 1; |
187 | 187 | ||
188 | INIT_LIST_HEAD(&addr->list); | 188 | INIT_LIST_HEAD(&addr->list); |
189 | INIT_RCU_HEAD(&addr->rcu); | ||
190 | 189 | ||
191 | /* We always hold a socket lock when calling this function, | 190 | /* We always hold a socket lock when calling this function, |
192 | * and that acts as a writer synchronizing lock. | 191 | * and that acts as a writer synchronizing lock. |
diff --git a/net/sctp/ipv6.c b/net/sctp/ipv6.c index cc50fbe99291..1d7ac70ba39f 100644 --- a/net/sctp/ipv6.c +++ b/net/sctp/ipv6.c | |||
@@ -381,7 +381,6 @@ static void sctp_v6_copy_addrlist(struct list_head *addrlist, | |||
381 | addr->a.v6.sin6_scope_id = dev->ifindex; | 381 | addr->a.v6.sin6_scope_id = dev->ifindex; |
382 | addr->valid = 1; | 382 | addr->valid = 1; |
383 | INIT_LIST_HEAD(&addr->list); | 383 | INIT_LIST_HEAD(&addr->list); |
384 | INIT_RCU_HEAD(&addr->rcu); | ||
385 | list_add_tail(&addr->list, addrlist); | 384 | list_add_tail(&addr->list, addrlist); |
386 | } | 385 | } |
387 | } | 386 | } |
diff --git a/net/sctp/proc.c b/net/sctp/proc.c index d093cbfeaac4..784bcc9a979d 100644 --- a/net/sctp/proc.c +++ b/net/sctp/proc.c | |||
@@ -40,7 +40,7 @@ | |||
40 | #include <net/sctp/sctp.h> | 40 | #include <net/sctp/sctp.h> |
41 | #include <net/ip.h> /* for snmp_fold_field */ | 41 | #include <net/ip.h> /* for snmp_fold_field */ |
42 | 42 | ||
43 | static struct snmp_mib sctp_snmp_list[] = { | 43 | static const struct snmp_mib sctp_snmp_list[] = { |
44 | SNMP_MIB_ITEM("SctpCurrEstab", SCTP_MIB_CURRESTAB), | 44 | SNMP_MIB_ITEM("SctpCurrEstab", SCTP_MIB_CURRESTAB), |
45 | SNMP_MIB_ITEM("SctpActiveEstabs", SCTP_MIB_ACTIVEESTABS), | 45 | SNMP_MIB_ITEM("SctpActiveEstabs", SCTP_MIB_ACTIVEESTABS), |
46 | SNMP_MIB_ITEM("SctpPassiveEstabs", SCTP_MIB_PASSIVEESTABS), | 46 | SNMP_MIB_ITEM("SctpPassiveEstabs", SCTP_MIB_PASSIVEESTABS), |
@@ -83,7 +83,7 @@ static int sctp_snmp_seq_show(struct seq_file *seq, void *v) | |||
83 | 83 | ||
84 | for (i = 0; sctp_snmp_list[i].name != NULL; i++) | 84 | for (i = 0; sctp_snmp_list[i].name != NULL; i++) |
85 | seq_printf(seq, "%-32s\t%ld\n", sctp_snmp_list[i].name, | 85 | seq_printf(seq, "%-32s\t%ld\n", sctp_snmp_list[i].name, |
86 | snmp_fold_field((void **)sctp_statistics, | 86 | snmp_fold_field((void __percpu **)sctp_statistics, |
87 | sctp_snmp_list[i].entry)); | 87 | sctp_snmp_list[i].entry)); |
88 | 88 | ||
89 | return 0; | 89 | return 0; |
diff --git a/net/sctp/protocol.c b/net/sctp/protocol.c index a3c8988758b1..e771690f6d5d 100644 --- a/net/sctp/protocol.c +++ b/net/sctp/protocol.c | |||
@@ -188,7 +188,6 @@ static void sctp_v4_copy_addrlist(struct list_head *addrlist, | |||
188 | addr->a.v4.sin_addr.s_addr = ifa->ifa_local; | 188 | addr->a.v4.sin_addr.s_addr = ifa->ifa_local; |
189 | addr->valid = 1; | 189 | addr->valid = 1; |
190 | INIT_LIST_HEAD(&addr->list); | 190 | INIT_LIST_HEAD(&addr->list); |
191 | INIT_RCU_HEAD(&addr->rcu); | ||
192 | list_add_tail(&addr->list, addrlist); | 191 | list_add_tail(&addr->list, addrlist); |
193 | } | 192 | } |
194 | } | 193 | } |
@@ -996,12 +995,13 @@ int sctp_register_pf(struct sctp_pf *pf, sa_family_t family) | |||
996 | 995 | ||
997 | static inline int init_sctp_mibs(void) | 996 | static inline int init_sctp_mibs(void) |
998 | { | 997 | { |
999 | return snmp_mib_init((void**)sctp_statistics, sizeof(struct sctp_mib)); | 998 | return snmp_mib_init((void __percpu **)sctp_statistics, |
999 | sizeof(struct sctp_mib)); | ||
1000 | } | 1000 | } |
1001 | 1001 | ||
1002 | static inline void cleanup_sctp_mibs(void) | 1002 | static inline void cleanup_sctp_mibs(void) |
1003 | { | 1003 | { |
1004 | snmp_mib_free((void**)sctp_statistics); | 1004 | snmp_mib_free((void __percpu **)sctp_statistics); |
1005 | } | 1005 | } |
1006 | 1006 | ||
1007 | static void sctp_v4_pf_init(void) | 1007 | static void sctp_v4_pf_init(void) |
diff --git a/net/sctp/socket.c b/net/sctp/socket.c index 67fdac9d2d33..f6d1e59c4151 100644 --- a/net/sctp/socket.c +++ b/net/sctp/socket.c | |||
@@ -6359,7 +6359,7 @@ void sctp_copy_sock(struct sock *newsk, struct sock *sk, | |||
6359 | struct sctp_association *asoc) | 6359 | struct sctp_association *asoc) |
6360 | { | 6360 | { |
6361 | struct inet_sock *inet = inet_sk(sk); | 6361 | struct inet_sock *inet = inet_sk(sk); |
6362 | struct inet_sock *newinet = inet_sk(newsk); | 6362 | struct inet_sock *newinet; |
6363 | 6363 | ||
6364 | newsk->sk_type = sk->sk_type; | 6364 | newsk->sk_type = sk->sk_type; |
6365 | newsk->sk_bound_dev_if = sk->sk_bound_dev_if; | 6365 | newsk->sk_bound_dev_if = sk->sk_bound_dev_if; |