AnsweredAssumed Answered

MCC hang in Vybrid

Question asked by Eric Cowden Employee on Mar 17, 2015
Latest reply on Apr 22, 2015 by alejandrolozano

My customer, Life fitness uses using MQX-4.0 and Linux is 3.0.15 plus patches for specific HW.   They use a SOM from Emcraft.   

 


The issue we are seeing is with MCC. We have multiple MCC endpoints on the M4 core (running MQX) communicating with corresponding endpoints on the A5 (running Linux). The endpoints on the M4 are located in separate tasks. We notice that after heavy traffic, our M4 MQX application appears to become deadlocked, as tasks are not running anymore. When this happens, I observe that two tasks are stuck in mcc_recv_copy() waiting for a mutex. The M4 never recovers from this. See below for a screen shot of the stack trace, which is the same in two separate tasks.

Screen shot.gif


I have some more info regarding this issue. Emcraft has modified a simple MQX test application (attached) running on the M4, which creates 5 tasks using 5 endpoints to send and receive data over mcc. We have our standard mcc_proxy application (simple app which translates mcc data into TCP data) running under Linux on the A5 side. This simple test app hangs in the same way our application does. I see two of the tasks blocked on mcc_get_semaphore.

I have also asked if it possible to re-produce this on the tower system and the customer is working on that.

Outcomes