mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 19:56:18 +00:00
tcp: tcp_prequeue() can use keyed wakeups
We can avoid waking up tasks not interested in receive notifications, using wake_up_interruptible_poll() instead of wake_up_interruptible() Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f5f8d86b23
commit
7aedec2ad5
1 changed files with 2 additions and 1 deletions
|
@ -908,7 +908,8 @@ static inline int tcp_prequeue(struct sock *sk, struct sk_buff *skb)
|
|||
|
||||
tp->ucopy.memory = 0;
|
||||
} else if (skb_queue_len(&tp->ucopy.prequeue) == 1) {
|
||||
wake_up_interruptible(sk->sk_sleep);
|
||||
wake_up_interruptible_poll(sk->sk_sleep,
|
||||
POLLIN | POLLRDNORM | POLLRDBAND);
|
||||
if (!inet_csk_ack_scheduled(sk))
|
||||
inet_csk_reset_xmit_timer(sk, ICSK_TIME_DACK,
|
||||
(3 * TCP_RTO_MIN) / 4,
|
||||
|
|
Loading…
Reference in a new issue