This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

messageQ_get 获取不到,一直IDLE



各位好,

我使用qmssIpcBenchmark工程,修改增加代码后;大致框架是:

core0发送msg给core1-7;core1-7接收到msg后,处理后,发送接收到msg给core0;core0接收到core1-7发送的msg后,处理完毕。正常。

但是当我再次,加入pcie中断部分,core0检测寄存器,检测到pcie中断,core0发送msg给core1-7;core1-7接收到msg后,处理后,发送接收到msg给core0;这时候core0messageQ_get 获取不到core1-7发送的msg,一直IDLE

请问会是什么原因?

还有一个问题;我将

msg = MessageQ_alloc(HEAP_ID, MESSAGE_SIZE_IN_BYTES);

Int MessageQ_put(MessageQ_QueueId queueId, MessageQ_Msg msg);

 Int MessageQ_get(MessageQ_Handle handle, MessageQ_Msg *msg, UInt timeout);

Int MessageQ_free(MessageQ_Msg msg);

这整条链路,循环执行;正常执行两次,便报一个错误

ti.sdo.ipc.MessageQ: line 257: assertion failure: A_heapIdInvalid: heapId is invalid
xdc.runtime.Error.raise: terminating execution

请问会是怎样的问题?

谢谢