summaryrefslogtreecommitdiff
path: root/src/mem.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem.c')
-rw-r--r--src/mem.c43
1 files changed, 21 insertions, 22 deletions
diff --git a/src/mem.c b/src/mem.c
index c59c855f93..8d94ee26ec 100644
--- a/src/mem.c
+++ b/src/mem.c
@@ -1,7 +1,7 @@
/*
* File : mem.c
* This file is part of RT-Thread RTOS
- * COPYRIGHT (C) 2008 - 2009, RT-Thread Development Team
+ * COPYRIGHT (C) 2008 - 2011, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
@@ -165,7 +165,7 @@ static void plug_holes(struct heap_mem *mem)
* @param end_addr the end address of system page
*
*/
-void rt_system_heap_init(void* begin_addr, void* end_addr)
+void rt_system_heap_init(void *begin_addr, void *end_addr)
{
struct heap_mem *mem;
rt_uint32_t begin_align = RT_ALIGN((rt_uint32_t)begin_addr, RT_ALIGN_SIZE);
@@ -174,12 +174,14 @@ void rt_system_heap_init(void* begin_addr, void* end_addr)
RT_DEBUG_NOT_IN_INTERRUPT;
/* alignment addr */
- if((end_align > (2 * SIZEOF_STRUCT_MEM) ) &&
- ((end_align - 2 * SIZEOF_STRUCT_MEM) >= begin_align )) {
- /* calculate the aligned memory size */
+ if ((end_align > (2 * SIZEOF_STRUCT_MEM)) &&
+ ((end_align - 2 * SIZEOF_STRUCT_MEM) >= begin_align))
+ {
+ /* calculate the aligned memory size */
mem_size_aligned = end_align - begin_align - 2 * SIZEOF_STRUCT_MEM;
}
- else {
+ else
+ {
rt_kprintf("mem init, error begin address 0x%x, and end address 0x%x\n", (rt_uint32_t)begin_addr, (rt_uint32_t)end_addr);
return;
}
@@ -242,13 +244,13 @@ void *rt_malloc(rt_size_t size)
if (size > mem_size_aligned)
{
- RT_DEBUG_LOG(RT_DEBUG_MEM,("no memory\n"));
+ RT_DEBUG_LOG(RT_DEBUG_MEM, ("no memory\n"));
return RT_NULL;
}
/* every data block must be at least MIN_SIZE_ALIGNED long */
- if(size < MIN_SIZE_ALIGNED) size = MIN_SIZE_ALIGNED;
+ if (size < MIN_SIZE_ALIGNED) size = MIN_SIZE_ALIGNED;
/* take memory semaphore */
rt_sem_take(&heap_sem, RT_WAITING_FOREVER);
@@ -258,8 +260,7 @@ void *rt_malloc(rt_size_t size)
{
mem = (struct heap_mem *)&heap_ptr[ptr];
- if ((!mem->used) &&
- (mem->next - (ptr + SIZEOF_STRUCT_MEM)) >= size)
+ if ((!mem->used) && (mem->next - (ptr + SIZEOF_STRUCT_MEM)) >= size)
{
/* mem is not used and at least perfect fit is possible:
* mem->next - (ptr + SIZEOF_STRUCT_MEM) gives us the 'user data size' of mem */
@@ -328,9 +329,9 @@ void *rt_malloc(rt_size_t size)
RT_ASSERT((rt_uint32_t)((rt_uint8_t *)mem + SIZEOF_STRUCT_MEM) % RT_ALIGN_SIZE == 0);
RT_ASSERT((((rt_uint32_t)mem) & (RT_ALIGN_SIZE-1)) == 0);
- RT_DEBUG_LOG(RT_DEBUG_MEM,("allocate memory at 0x%x, size: %d\n",
- (rt_uint32_t)((rt_uint8_t*)mem + SIZEOF_STRUCT_MEM),
- (rt_uint32_t)(mem->next - ((rt_uint8_t*)mem - heap_ptr))));
+ RT_DEBUG_LOG(RT_DEBUG_MEM, ("allocate memory at 0x%x, size: %d\n",
+ (rt_uint32_t)((rt_uint8_t *)mem + SIZEOF_STRUCT_MEM),
+ (rt_uint32_t)(mem->next - ((rt_uint8_t *)mem - heap_ptr))));
RT_OBJECT_HOOK_CALL(rt_malloc_hook, (((void*)((rt_uint8_t *)mem + SIZEOF_STRUCT_MEM)), size));
/* return the memory data except mem struct */
@@ -355,7 +356,7 @@ void *rt_realloc(void *rmem, rt_size_t newsize)
rt_size_t size;
rt_size_t ptr, ptr2;
struct heap_mem *mem, *mem2;
- void* nmem;
+ void *nmem;
RT_DEBUG_NOT_IN_INTERRUPT;
@@ -363,7 +364,7 @@ void *rt_realloc(void *rmem, rt_size_t newsize)
newsize = RT_ALIGN(newsize, RT_ALIGN_SIZE);
if (newsize > mem_size_aligned)
{
- RT_DEBUG_LOG(RT_DEBUG_MEM,("realloc: out of memory\n"));
+ RT_DEBUG_LOG(RT_DEBUG_MEM, ("realloc: out of memory\n"));
return RT_NULL;
}
@@ -478,7 +479,7 @@ void rt_free(void *rmem)
if ((rt_uint8_t *)rmem < (rt_uint8_t *)heap_ptr || (rt_uint8_t *)rmem >= (rt_uint8_t *)heap_end)
{
- RT_DEBUG_LOG(RT_DEBUG_MEM,("illegal memory\n"));
+ RT_DEBUG_LOG(RT_DEBUG_MEM, ("illegal memory\n"));
return;
}
@@ -486,9 +487,9 @@ void rt_free(void *rmem)
/* Get the corresponding struct heap_mem ... */
mem = (struct heap_mem *)((rt_uint8_t *)rmem - SIZEOF_STRUCT_MEM);
- RT_DEBUG_LOG(RT_DEBUG_MEM,("release memory 0x%x, size: %d\n",
+ RT_DEBUG_LOG(RT_DEBUG_MEM, ("release memory 0x%x, size: %d\n",
(rt_uint32_t)rmem,
- (rt_uint32_t)(mem->next - ((rt_uint8_t*)mem - heap_ptr))));
+ (rt_uint32_t)(mem->next - ((rt_uint8_t *)mem - heap_ptr))));
/* protect the heap from concurrent access */
@@ -517,9 +518,7 @@ void rt_free(void *rmem)
}
#ifdef RT_MEM_STATS
-void rt_memory_info(rt_uint32_t *total,
- rt_uint32_t *used,
- rt_uint32_t *max_used)
+void rt_memory_info(rt_uint32_t *total, rt_uint32_t *used, rt_uint32_t *max_used)
{
if (total != RT_NULL) *total = mem_size_aligned;
if (used != RT_NULL) *used = used_mem;
@@ -528,7 +527,7 @@ void rt_memory_info(rt_uint32_t *total,
#ifdef RT_USING_FINSH
#include <finsh.h>
-void list_mem()
+void list_mem(void)
{
rt_kprintf("total memory: %d\n", mem_size_aligned);
rt_kprintf("used memory : %d\n", used_mem);