_Heap_Allocate_aligned return the same address?
osv at javad.com
Wed Sep 12 10:27:55 UTC 2007
"阎淼" <yanmiaobest at gmail.com> writes:
> I am using rtems-4.7.1 on i386-qemu, I called
> _Heap_Allocate_aligned twice, but the return address are the same.
> here is my code:
> char buf[4096 * 10];
> #define PAGE_SIZE 4096
> void f()
> Heap_Control the_heap;
> _Heap_Initialize( &the_heap, (void *)buf, 4096 * 10, CPU_ALIGNMENT);
> void *p = _Heap_Allocate_aligned( &the_heap, 4096, PAGE_SIZE);
> void *g = _Heap_Allocate_aligned( &the_heap, 4096, PAGE_SIZE);
> printf("0x%x\n", p );
> printf("0x%x\n", g );
> and the output is:
> is somthing wrong here?
Yes, it seems it is. I'm able to reproduce the problem here. I'm now
looking into the heap code to identify and fix the problem.
More information about the users