Hi,
Does MessageQ module takes care of cache coherency of whole message or just message header?
The reason I am asking because I encountered a problem that probably is due to cache coherency. I pass data (few hundred bytes) between cores by attaching it to messageq header. That is I reserve header_size + data size using MessageQ_allocate, write data and send the whole thing. On the receiving side I just start using message and data in it, I dont do any cache syncing because supposedly MessageQ should do cache syncing for the body of a message. Everything works fine in debug mode but sometimes the received data contains zeros if program is compiled in release. Adding invalidate cache on receiving side seems to fix the problem.
So my understanding is that MessageQ is not syncing data attached to the message. If so could you please add a note to the documentation or if it is already in documentation point me to the section where it is mentioned.
Thank you,
Alexey