diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-12-03 02:09:38 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-12-03 02:09:38 -0500 |
commit | b3c6aeb3ce26b286769d2deafec47d218c83dd09 (patch) | |
tree | 06378a021f5873003a07f0388aa0cb6e81a32c19 /net/sctp/socket.c | |
parent | af2eb17bac41a116b73d85b3fb160405c32bea5b (diff) | |
parent | af1afe866297448ad8a1da99fa8a6af86c43c909 (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Diffstat (limited to 'net/sctp/socket.c')
-rw-r--r-- | net/sctp/socket.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/net/sctp/socket.c b/net/sctp/socket.c index abab81f3818f..d890dfa8818f 100644 --- a/net/sctp/socket.c +++ b/net/sctp/socket.c | |||
@@ -4743,11 +4743,6 @@ static struct sk_buff *sctp_skb_recv_datagram(struct sock *sk, int flags, | |||
4743 | struct sk_buff *skb; | 4743 | struct sk_buff *skb; |
4744 | long timeo; | 4744 | long timeo; |
4745 | 4745 | ||
4746 | /* Caller is allowed not to check sk->sk_err before calling. */ | ||
4747 | error = sock_error(sk); | ||
4748 | if (error) | ||
4749 | goto no_packet; | ||
4750 | |||
4751 | timeo = sock_rcvtimeo(sk, noblock); | 4746 | timeo = sock_rcvtimeo(sk, noblock); |
4752 | 4747 | ||
4753 | SCTP_DEBUG_PRINTK("Timeout: timeo: %ld, MAX: %ld.\n", | 4748 | SCTP_DEBUG_PRINTK("Timeout: timeo: %ld, MAX: %ld.\n", |
@@ -4774,6 +4769,11 @@ static struct sk_buff *sctp_skb_recv_datagram(struct sock *sk, int flags, | |||
4774 | if (skb) | 4769 | if (skb) |
4775 | return skb; | 4770 | return skb; |
4776 | 4771 | ||
4772 | /* Caller is allowed not to check sk->sk_err before calling. */ | ||
4773 | error = sock_error(sk); | ||
4774 | if (error) | ||
4775 | goto no_packet; | ||
4776 | |||
4777 | if (sk->sk_shutdown & RCV_SHUTDOWN) | 4777 | if (sk->sk_shutdown & RCV_SHUTDOWN) |
4778 | break; | 4778 | break; |
4779 | 4779 | ||