On Thu, 9 Jun 2022 09:17:33 +0000 "halsey.p...@longsys.com" <halsey.p...@longsys.com> wrote:
> Dear All, > > I am suffering an crash issue recently. My app based on SPDK/DPDK uses > rte_malloc_socket and rte_free to use hugepage feature in multi-threads and > async programming environment. > > Unfortunately, It would crashed sometimes, and I found that it usually > crashed caused by the element's size = 0 in function malloc_elem_free at line > 570 in file malloc_elem.c during calling rte_free, the call stack is as the > attachment. > > I am not sure if I miss some information related async and multi-thread > programing using DPDK rte_malloc module. > > BTW, it works fine when I switch to kernel's malloc/free. Does it work if you enable address sanitizer and use regular glibc malloc/free? What about with valgrind? You can also build DPDK with RTE_MALLOC_DEBUG which adds more checks for clobbering. I suspect your code is writing outside the allocated space or has a use after free.