aboutsummaryrefslogtreecommitdiffstats
path: root/net/sctp/socket.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2017-02-07 16:29:30 -0500
committerDavid S. Miller <davem@davemloft.net>2017-02-07 16:29:30 -0500
commit3efa70d78f218e4c9276b0bac0545e5184c1c47b (patch)
treef4abe2f05e173023d2a262afd4aebb1e89fe6985 /net/sctp/socket.c
parent76e0e70e6452b971a69cc9794ff4a6715c11f7f2 (diff)
parent926af6273fc683cd98cd0ce7bf0d04a02eed6742 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
The conflict was an interaction between a bug fix in the netvsc driver in 'net' and an optimization of the RX path in 'net-next'. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp/socket.c')
-rw-r--r--net/sctp/socket.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/sctp/socket.c b/net/sctp/socket.c
index a4609a0be76d..a8b4252fe084 100644
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
@@ -239,7 +239,7 @@ static struct sctp_transport *sctp_addr_id2transport(struct sock *sk,
239 union sctp_addr *laddr = (union sctp_addr *)addr; 239 union sctp_addr *laddr = (union sctp_addr *)addr;
240 struct sctp_transport *transport; 240 struct sctp_transport *transport;
241 241
242 if (sctp_verify_addr(sk, laddr, af->sockaddr_len)) 242 if (!af || sctp_verify_addr(sk, laddr, af->sockaddr_len))
243 return NULL; 243 return NULL;
244 244
245 addr_asoc = sctp_endpoint_lookup_assoc(sctp_sk(sk)->ep, 245 addr_asoc = sctp_endpoint_lookup_assoc(sctp_sk(sk)->ep,
@@ -7540,7 +7540,8 @@ static int sctp_wait_for_sndbuf(struct sctp_association *asoc, long *timeo_p,
7540 */ 7540 */
7541 release_sock(sk); 7541 release_sock(sk);
7542 current_timeo = schedule_timeout(current_timeo); 7542 current_timeo = schedule_timeout(current_timeo);
7543 BUG_ON(sk != asoc->base.sk); 7543 if (sk != asoc->base.sk)
7544 goto do_error;
7544 lock_sock(sk); 7545 lock_sock(sk);
7545 7546
7546 *timeo_p = current_timeo; 7547 *timeo_p = current_timeo;