The multicast failure is known. It happens because I lowered the socket 
receive buffer size in commit 10724cc7bb783 ("tipc: redesign 
connection-level flow control") so that the send stream now occasionally 
get too big, and a message is rejected. I don't consider this an error, 
as a multicast sender always has to expect and prepare his code for such 
events.  I have not seen the problem in test #6, but it is easily 
imaginable that this is the same issue.

///jon



On 08/30/2016 06:02 AM, Xue, Ying wrote:
>
> Just a reminder: this issues might not be caused by your patches. So 
> firstly we need to identify if your patch set leads to the side 
> effects. If not, they are introduced by previous commits merged into 
> mainline.
>
> Regards,
>
> Ying
>
> *From:*Parthasarathy Bhuvaragan 
> [mailto:parthasarathy.bhuvara...@ericsson.com]
> *Sent:* Tuesday, August 30, 2016 4:30 PM
> *To:* Xue, Ying; tipc-discussion@lists.sourceforge.net; 
> jon.ma...@ericsson.com; ma...@donjonn.com
> *Subject:* Re: [PATCH net-next v2 00/12] tipc: create socket FSM using 
> sk_state only
>
> Hi Ying,
>
> I tried to trigger this fault. I get a different error on the 
> multicast test, after about 2 hours.
>  node1 ~ # ./tipcTS
>  Received on 1 sockets in subtest 6, expected 2
>  TEST FAILED Received wrong number of multicast messages
>   errno = 11: Resource temporarily unavailable
>
> My client and server run on 2 qemu-guest's with 4 cpus. I will 
> continue to investigate this. Sorry for the late reply, as I got stuck 
> with other issues recently and couldn't focus on this.
>
> regards partha
>
> On 08/17/2016 12:40 PM, Xue, Ying wrote:
>
>     I have found the following issue after the series is applied to the 
> latest kernel:
>
>     Test # 8
>
>     TIPC TIPC_IMPORTANCE test...STARTED!
>
>     TEST FAILED unexpected number of send() errors errno = 113: No route to 
> host
>
>     Test # 1
>
>     Below is the procedure of how to reproduce above error:
>
>     Prepare for two nodes. One is to run "tipcTS"; and on another node, we 
> use the below commands to repeatedly run tipcTC test case:
>
>     while [ true ]; do tipcTC 0; done
>
>     About after 2 or 3 hours, the error above will appear.
>
>     Regards,
>
>     Ying
>
>     -----Original Message-----
>
>     From: Parthasarathy Bhuvaragan 
> [mailto:parthasarathy.bhuvara...@ericsson.com]
>
>     Sent: Monday, August 15, 2016 5:19 PM
>
>     To:tipc-discussion@lists.sourceforge.net
>     <mailto:tipc-discussion@lists.sourceforge.net>;jon.ma...@ericsson.com 
> <mailto:jon.ma...@ericsson.com>;ma...@donjonn.com <mailto:ma...@donjonn.com>; 
> Xue, Ying
>
>     Subject: [PATCH net-next v2 00/12] tipc: create socket FSM using sk_state 
> only
>
>     The following issues with the current socket layer hinders socket 
> diagnostics implementation, which led to this patch series. The series does 
> not add any functional change.
>
>     1. tipc socket state is derived from multiple variables like
>
>         sock->state, tsk->probing_state and tsk->connected. This style forces
>
>         us to export multiple attributes to the user space, which has to be
>
>         backward compatible.
>
>     2. Abuse of sock->state cannot be exported to user-space without
>
>         requiring tipc specific hacks in the user-space.
>
>         - For connection less (CL) sockets sock->state is overloaded to
>
>           tipc state SS_READY.
>
>         - For connection oriented (CO) listening socket sock->state is
>
>           overloaded to tipc state SS_LISTEN.
>
>     This series is split into three:
>
>     1. A bug fix in patch-1
>
>     2. Express all tipc states using a single variable. This is done in 
> patch#2-5.
>
>     3. Migrate the new tipc states to sk->sk_state. This is done in 
> patch#6-12.
>
>     The figures below represents the FSM after this series:
>
>     Unconnected Sockets:
>
>     +------------------+        +--------------------+
>
>     | TIPC_UNCONNECTED |------->| TIPC_DISCONNECTING |
>
>     +------------------+        +--------------------+
>
>     Stream Server Listening Socket:
>
>     +------------------+        +-------------+
>
>     | TIPC_UNCONNECTED |------->| TIPC_LISTEN |
>
>     +------------------+        +-------------+
>
>                                        |
>
>     +--------------------+            |
>
>     | TIPC_DISCONNECTING |<-----------+
>
>     +--------------------+
>
>     Stream Server Data Socket:
>
>     +-----------------+        +------------------+
>
>     |TIPC_UNCONNECTED |------> | TIPC_ESTABLISHED |<---+
>
>     +-----------------+        +------------------+    |
>
>                                     ^   |    |          |
>
>                                     |   |    +----------+
>
>                                     |   v
>
>     +------------------+      +-------------+
>
>     |TIPC_DISCONNECTING|<-----|TIPC_PROBING |
>
>     +------------------+      +-------------+
>
>     Stream Socket Client:
>
>     +-----------------+       +-----------------+
>
>     |TIPC_UNCONNECTED |------>| TIPC_CONNECTING |
>
>     +-----------------+       +-----------------+
>
>                                        |
>
>                                        |
>
>                                        v
>
>                                +------------------+
>
>                                | TIPC_ESTABLISHED |<---+
>
>                                +------------------+    |
>
>                                     ^   |    |         |
>
>                                     |   |    +---------+
>
>                                     |   v
>
>     +------------------+      +-------------+
>
>     |TIPC_DISCONNECTING|<-----|TIPC_PROBING |
>
>     +------------------+      +-------------+
>
>     NOTE:
>
>     This is just a base refractoring required for socket diagnostics.
>
>     Implementation of TIPC socket diagnostics will be sent as a separate 
> series.
>
>     v2: - Address comments from Ying Xue<ying....@windriver.com> 
> <mailto:ying....@windriver.com>  in
>
>            patch #4, #5, #12.
>
>          - Added a note that the socket diagnostics will be sent as
>
>            another series.
>
>     v1: - I base the following patch series as the first version:
>
>            [RFC PATCH v1 00/12] tipc: create socket FSM using sk_state only
>
>     Parthasarathy Bhuvaragan (12):
>
>        tipc: set kern=0 in sk_alloc() during tipc_accept()
>
>        tipc: rename tsk->remote to tsk->peer for consistent naming
>
>        tipc: remove tsk->connected for connection less sockets
>
>        tipc: remove tsk->connected from tipc_sock
>
>        tipc: remove probing_intv from tipc_sock
>
>        tipc: remove socket state SS_READY
>
>        tipc: create TIPC_LISTEN as a new sk_state
>
>        tipc: create TIPC_PROBING/TIPC_ESTABLISHED as new sk_states
>
>        tipc: create TIPC_UNCONNECTED as a new sk_state
>
>        tipc: create TIPC_DISCONNECTING as a new sk_state
>
>        tipc: create TIPC_CONNECTING as a new sk_state
>
>        tipc: remove SS_CONNECTED sock state
>
>       include/uapi/linux/tipc.h |  12 ++
>
>       net/tipc/socket.c         | 340 
> ++++++++++++++++++++++++++--------------------
>
>       2 files changed, 205 insertions(+), 147 deletions(-)
>
>     --
>
>     2.1.4
>

------------------------------------------------------------------------------
_______________________________________________
tipc-discussion mailing list
tipc-discussion@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tipc-discussion

Reply via email to