> -----Original Message-----
> From: Parthasarathy Bhuvaragan
> Sent: Monday, March 20, 2017 05:10 AM
> To: tipc-discussion@lists.sourceforge.net; Jon Maloy
> <jon.ma...@ericsson.com>; Ying Xue <ying....@windriver.com>
> Subject: [PATCH net v1 4/7] tipc: Fix missing connection request handling
> 
> In filter_connect, we use waitqueue_active() to check for any connections to
> wakeup. But waitqueue_active() is missing memory barriers while accessing
> the critical sections, leading to inconsistent results.
> 
> In this commit, we replace this with an SMP safe wq_has_sleeper().

This will not be evident from the patch, as you cannot expect readers to 
immediately know what tipc_data_ready() is doing.
I think you should clarify this log commit message.

///jon

> 
> Signed-off-by: Parthasarathy Bhuvaragan
> <parthasarathy.bhuvara...@ericsson.com>
> ---
> v2: Address comments from Ying Xue by replacing wq_has_sleeper()..
>     with sk->sk_data_ready(sk).
> 
> Signed-off-by: Parthasarathy Bhuvaragan
> <parthasarathy.bhuvara...@ericsson.com>
> ---
>  net/tipc/socket.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/net/tipc/socket.c b/net/tipc/socket.c index
> 2c2ea2e15c45..cb8d2dd2b10c 100644
> --- a/net/tipc/socket.c
> +++ b/net/tipc/socket.c
> @@ -1584,8 +1584,7 @@ static bool filter_connect(struct tipc_sock *tsk,
> struct sk_buff *skb)
>                       return true;
> 
>               /* If empty 'ACK-' message, wake up sleeping connect() */
> -             if (waitqueue_active(sk_sleep(sk)))
> -                     wake_up_interruptible(sk_sleep(sk));
> +             sk->sk_data_ready(sk);
> 
>               /* 'ACK-' message is neither accepted nor rejected: */
>               msg_set_dest_droppable(hdr, 1);
> --
> 2.1.4


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
tipc-discussion mailing list
tipc-discussion@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tipc-discussion

Reply via email to