diff options
| author | bernard.xiong <[email protected]> | 2010-11-30 05:20:41 +0000 |
|---|---|---|
| committer | bernard.xiong <[email protected]> | 2010-11-30 05:20:41 +0000 |
| commit | 30967678b19480c39840abafc69290c3375689c7 (patch) | |
| tree | 656d6fc81fb61587db36a46a629b87cf05176442 /src | |
| parent | 1e5518ee84fa3704cd16fd8aa909302f2833012d (diff) | |
fix compiling issue when RT_USING_HEAP is not defined.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1149 bbd45198-f89e-11dd-88c7-29a3b14d5316
Diffstat (limited to 'src')
| -rw-r--r-- | src/idle.c | 6 | ||||
| -rw-r--r-- | src/scheduler.c | 8 | ||||
| -rw-r--r-- | src/thread.c | 3 |
3 files changed, 8 insertions, 9 deletions
diff --git a/src/idle.c b/src/idle.c index bb6edebfcc..49466b81b4 100644 --- a/src/idle.c +++ b/src/idle.c @@ -27,9 +27,7 @@ static struct rt_thread idle; ALIGN(RT_ALIGN_SIZE) static rt_uint8_t rt_thread_stack[IDLE_THREAD_STACK_SIZE]; -#ifdef RT_USING_HEAP extern rt_list_t rt_thread_defunct; -#endif #ifdef RT_USING_HOOK /** @@ -60,7 +58,6 @@ void rt_thread_idle_sethook(void (*hook)()) */ void rt_thread_idle_excute(void) { -#ifdef RT_USING_HEAP /* check the defunct thread list */ if (!rt_list_isempty(&rt_thread_defunct)) { @@ -113,6 +110,7 @@ void rt_thread_idle_excute(void) /* enable interrupt */ rt_hw_interrupt_enable(lock); +#ifdef RT_USING_HEAP #ifdef RT_USING_MODULE /* the thread belongs to an application module */ if(thread->flags & RT_OBJECT_FLAG_MODULE) @@ -138,8 +136,8 @@ void rt_thread_idle_excute(void) /* unload module */ if(module->nref == 0) rt_module_unload(module); #endif - } #endif + } } static void rt_thread_idle_entry(void* parameter) diff --git a/src/scheduler.c b/src/scheduler.c index ccc8f12ae9..9ce552f70e 100644 --- a/src/scheduler.c +++ b/src/scheduler.c @@ -48,9 +48,7 @@ rt_uint8_t rt_thread_ready_table[32]; rt_uint32_t rt_thread_ready_priority_group; #endif -#ifdef RT_USING_HEAP rt_list_t rt_thread_defunct; -#endif const rt_uint8_t rt_lowest_bitmap[] = { @@ -106,6 +104,12 @@ static void _rt_scheduler_stack_check(struct rt_thread* thread) rt_uint32_t level; rt_kprintf("thread:%s stack overflow\n", thread->name); + #ifdef RT_USING_FINSH + { + extern long list_thread(void); + list_thread(); + } + #endif level = rt_hw_interrupt_disable(); while (level); } diff --git a/src/thread.c b/src/thread.c index 0f6b658ea6..26d263afcb 100644 --- a/src/thread.c +++ b/src/thread.c @@ -31,10 +31,7 @@ extern rt_list_t rt_thread_priority_table[RT_THREAD_PRIORITY_MAX]; extern struct rt_thread* rt_current_thread; extern rt_uint8_t rt_current_priority; - -#ifdef RT_USING_HEAP extern rt_list_t rt_thread_defunct; -#endif static void rt_thread_exit(void); void rt_thread_timeout(void* parameter); |
