Hello,
This simple code demonstrates the problem:
int main ()
{
char* buffer1;
char* buffer2;
int size = 2*1024*1024 + 1;
for(;;) {
buffer1 = (char *) malloc(size);
buffer2 = (char *) malloc(size);
free(buffer1);
free(buffer2);
}
}
The second free() does not free allocated memory if size >2Mb.
On 6.1-STABLE all is OK.
Best Regards