Re: [PATCH 5/14] [TIPC] Optimize wakeup logic when socket has no waiting processes

2006-10-16 Thread David Miller
From: Per Liden [EMAIL PROTECTED]
Date: Fri, 13 Oct 2006 13:37:46 +0200

 From: Allan Stephens [EMAIL PROTECTED]
 
 This patch adds a simple test so TIPC doesn't try waking up processes
 waiting on a socket if there are none waiting.
 
 Signed-off-by: Allan Stephens [EMAIL PROTECTED]
 Signed-off-by: Per Liden [EMAIL PROTECTED]

Applied.
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 5/14] [TIPC] Optimize wakeup logic when socket has no waiting processes

2006-10-13 Thread Per Liden
From: Allan Stephens [EMAIL PROTECTED]

This patch adds a simple test so TIPC doesn't try waking up processes
waiting on a socket if there are none waiting.

Signed-off-by: Allan Stephens [EMAIL PROTECTED]
Signed-off-by: Per Liden [EMAIL PROTECTED]
---
 net/tipc/socket.c |6 --
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/net/tipc/socket.c b/net/tipc/socket.c
index ed900fe..2a6a5a6 100644
--- a/net/tipc/socket.c
+++ b/net/tipc/socket.c
@@ -1208,7 +1208,8 @@ static u32 dispatch(struct tipc_port *tp
atomic_inc(tipc_queue_size);
skb_queue_tail(sock-sk-sk_receive_queue, buf);
 
-wake_up_interruptible(sock-sk-sk_sleep);
+   if (waitqueue_active(sock-sk-sk_sleep))
+   wake_up_interruptible(sock-sk-sk_sleep);
return TIPC_OK;
 }
 
@@ -1223,7 +1224,8 @@ static void wakeupdispatch(struct tipc_p
 {
struct tipc_sock *tsock = (struct tipc_sock *)tport-usr_handle;
 
-wake_up_interruptible(tsock-sk.sk_sleep);
+   if (waitqueue_active(tsock-sk.sk_sleep))
+   wake_up_interruptible(tsock-sk.sk_sleep);
 }
 
 /**
-- 
1.4.1

-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html