sYSMALLOc failed with program abort
Good afternoon,
I develop an application and receive a following error message during its work:
Code:
malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
Aborted
I suppose this is not kernel bug (I tested it on two or three different kernels), but it appears in system library function as I see, when I call malloc() during application works. I tried to rewrite and simplify the code that raises an error, but it seems that's not a problem. In my last code I call malloc() only once, but it fails again even in this single call.
Can you help me to understand what really this "malloc.c" message means? And what cases can raise these fatal errors?