Part Number:OMAP-L138
Tool/software: Linux
Hi all,
Some of our custom board occurred 'assertion failure: A_bufOverflow: Buffer overflow'. The issue occured very rarely. Our dsp software using std:vector and std:list very often, but I can't find any overflow with them. I have a question with heaptrack.
HeapTrack is using a double link list to recore the buffer alloc inform. But I find that in bios_6_35_01_29/packages/ti/sysbios/knl/Queue.c, Queue_put is using Hwi_disable and Hwi_restore to make sure the operation atomic, but not in Queue_remove. Why? Is Queue_remove atomic still? If Queue_remove is not atomic, when two threads HeapTrack_free at the same time, the HeapTrack queue may have the wrong record.
Can anyone help to support?
Thanks