|
|
@@ -6189,6 +6189,16 @@ static int sctp_wait_for_sndbuf(struct sctp_association *asoc, long *timeo_p,
|
|
|
goto out;
|
|
|
}
|
|
|
|
|
|
+void sctp_data_ready(struct sock *sk, int len)
|
|
|
+{
|
|
|
+ read_lock_bh(&sk->sk_callback_lock);
|
|
|
+ if (sk_has_sleeper(sk))
|
|
|
+ wake_up_interruptible_sync_poll(sk->sk_sleep, POLLIN |
|
|
|
+ POLLRDNORM | POLLRDBAND);
|
|
|
+ sk_wake_async(sk, SOCK_WAKE_WAITD, POLL_IN);
|
|
|
+ read_unlock_bh(&sk->sk_callback_lock);
|
|
|
+}
|
|
|
+
|
|
|
/* If socket sndbuf has changed, wake up all per association waiters. */
|
|
|
void sctp_write_space(struct sock *sk)
|
|
|
{
|