Commit Graph

50 Commits

Author SHA1 Message Date
pathletboy 5b03e37ae1 allow parameter "recved" can be null in function "rt_event_recv" 2015-11-21 20:55:41 +08:00
Grissiom b72001fcac kernel: mutex could only be released in thread context
Mutex has the idea of ownership, only the thread which owns the mutex
can release it. So rt_mutex_release could only be called in thread
context.  Add a debug guard to it.
2013-10-14 09:50:18 +08:00
Grissiom 6f71308ef5 kernel: add RT_DEBUG_IN_THREAD_CONTEXT
In thread context means: 1) the scheduler has been started; 2) not in
interrupt context. It is more stronger than RT_DEBUG_NOT_IN_INTERRUPT.
With this commit, you will catch the error on situations like taking
mutex before scheduling instead of crashing on NULL pointer reference.
2013-10-11 22:51:38 +08:00
Grissiom c465bc2c2e rt_event_recv: add a check on the option flag
Either RT_EVENT_FLAG_AND or RT_EVENT_FLAG_OR should be set in the option
flag. If none of them is present, the waiting thread will never be
resumed.
2013-09-14 13:12:23 +08:00
Bernard Xiong 79392bb082 Embedded GPLv2 license. 2013-06-24 17:06:09 +08:00
Bernard Xiong 4afdf44da2 add RT_KERNEL_MALLOC/FREE 2013-04-25 14:22:07 +08:00
dzzxzz@gmail.com 1cffb60ce0 fixed the coding style in ipc.c
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2520 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-25 06:45:34 +00:00
dzzxzz@gmail.com 0e40d55d9f fixed the coding style of RT_DEBUG_LOG
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2500 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-20 07:25:19 +00:00
dzzxzz@gmail.com 700b16c52b adjust the coding style in src/ipc.c
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2302 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-24 03:01:48 +00:00
qiuyiuestc@gmail.com a73abdccf5 split export symbols from rtm.c to each file
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2263 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-08-27 01:21:57 +00:00
bernard.xiong@gmail.com 0f519b6721 move src\kservice.h to include\rtservice.h.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2005 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-22 06:11:44 +00:00
bernard.xiong@gmail.com b6c1ebf423 add RT_PRINTF_PRECISION in kservice.c; fix re-schedule issue in IPC control function.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2003 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-22 05:57:54 +00:00
dzzxzz 12b5e56f46 unify the coding style of kernel
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1998 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-17 06:43:49 +00:00
bernard.xiong@gmail.com 6b31d549c7 cleanup some comments.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1898 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-12-31 08:58:40 +00:00
bernard.xiong@gmail.com 27bbf04ac6 add more parameters checking in message queue
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1888 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-12-29 15:39:14 +00:00
dzzxzz a1e64f295c unify the ipc.c coding style according to the /documentation/coding_style_cn.txt
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1876 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-12-24 06:12:21 +00:00
bernard.xiong@gmail.com cc66f2dee6 clean up comments from chaos.proton@gmail.com.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1777 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-10-30 00:37:15 +00:00
dzzxzz c0f80bdf9a cleanup kernel code
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1715 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-09-21 03:56:42 +00:00
dzzxzz 405678552d cleanup code in ipc.c and idle.c
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1713 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-09-19 07:15:31 +00:00
bernard.xiong@gmail.com e7003777e0 cleanup ipc code.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1707 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-09-11 03:35:12 +00:00
bernard.xiong 9fce2db27e fixed the scheduling issue in rt_thread_startup; changed the end of line to UNIX style.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1703 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-09-08 02:17:18 +00:00
bernard.xiong ed87391097 fixed rt_thread_exit issue if the current thread has been preempted.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1689 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-09-01 09:26:45 +00:00
mbbill@gmail.com 573b73465e more updates on previous change
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1627 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-07-13 12:02:01 +00:00
mbbill@gmail.com 98d59d153e bugfix: thread->error will be changed unexpectedly when sending a mail in interrupt context.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1626 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-07-13 06:58:25 +00:00
qiuyiuestc@gmail.com cea21370a4 rewrite module memory allocator
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1618 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-07-04 23:48:07 +00:00
bernard.xiong@gmail.com ee68988518 change the RT_DEBUG_NOT_REENT to RT_DEBUG_NOT_IN_INTERRUPT.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1503 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-14 23:59:42 +00:00
mbbill@gmail.com 864bd11802 Add reentrance check. Put kernel debug switch together.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1494 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-12 10:01:48 +00:00
mbbill@gmail.com 8cae5c147f fix mailbox offset overflow
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1486 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-10 06:04:06 +00:00
bernard.xiong@gmail.com 3126b45da6 Remove divide instructions.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1477 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-09 14:13:38 +00:00
mbbill@gmail.com ae674ab359 Now, lwip is using blocking mailbox.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1473 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-08 16:41:36 +00:00
mbbill@gmail.com 252bc41a2c add a blocking mailbox post function
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1471 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-08 16:40:07 +00:00
bernard.xiong@gmail.com 24c5c98240 move the setting next pointer to NULL out off interrupt disable.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1450 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-04 13:30:43 +00:00
bernard.xiong 3ea3d509ef change the wrong end of line (all of them shall be UNIX end of line).
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1445 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-06-02 04:42:57 +00:00
bernard.xiong@gmail.com 10732a76e9 cleanup scons building script
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1065 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-11-20 12:31:00 +00:00
bernard.xiong 7018ab0661 add cleanup callback function on thread exit; add IPC object reset command.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1043 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-11-12 10:16:33 +00:00
qiuyiuestc fb7d4122fc implement module memory allocator
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1030 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-10-28 01:21:47 +00:00
bernard.xiong a0c9b0e90e move memcpy outside interrupt disable in mq.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@661 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-04-20 23:19:40 +00:00
bernard.xiong b557f30630 remove rt_ipc_object_decrease function
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@322 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-01-19 23:55:54 +00:00
mbbill f8f7a5f510 FIX: Removed suspend_thread_count.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@317 bbd45198-f89e-11dd-88c7-29a3b14d5316
2010-01-19 03:17:37 +00:00
bernard.xiong 51e2d91378 add license and copyright info
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@226 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-12-25 12:18:53 +00:00
bernard.xiong 8f90e129d3 clean up software timer code.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@222 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-12-24 00:03:57 +00:00
bernard.xiong fe92b1daed fix the rt_ipc_object_suspend issue when IPC flag is RT_IPC_FLAG_PRIO
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@201 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-12-16 08:28:01 +00:00
bernard.xiong 17c81cfa21 change the mb/mq receive timeout to 0 if the re-calculated delta tick is a negative number. -- found by freescale@stmsky.com
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@128 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-10-24 23:07:12 +00:00
bernard.xiong ff705032d8 change semaphore and mutex value to unsigned value
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@84 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-10-09 23:58:46 +00:00
bernard.xiong 8e76594241 convert dos endline to unix endline; cleanup schedule code for STM32
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@49 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-09-20 23:43:51 +00:00
bernard.xiong 3bfe93e365 fix mutex release bug
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@45 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-09-10 12:29:15 +00:00
bernard.xiong e860e11ef7 remove fast event and fix ipc release bug
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@43 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-09-09 23:30:00 +00:00
bernard.xiong dc638b887c fix the fast event receive bug
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@29 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-08-31 12:31:19 +00:00
bernard.xiong 5488777d55 fix event clear bug.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@7 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-07-18 10:02:12 +00:00
bernard.xiong bda4730a94 import RT-Thread RTOS 0.3.x to Google SVN
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2 bbd45198-f89e-11dd-88c7-29a3b14d5316
2009-07-02 22:48:23 +00:00