diff options
| author | [email protected] <[email protected]> | 2011-06-12 12:02:14 +0000 |
|---|---|---|
| committer | [email protected] <[email protected]> | 2011-06-12 12:02:14 +0000 |
| commit | 8e8fa0035d92534b672b2f81f79b77ff61cb25b7 (patch) | |
| tree | c7517388dd7f17cbb368c97b32f70a920431c15f /components | |
| parent | 864bd1180237c952beefda21266c3f76f288b99a (diff) | |
add reentrance check for lwip arch/ethernetif; convert an example to utf-8 format.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1495 bbd45198-f89e-11dd-88c7-29a3b14d5316
Diffstat (limited to 'components')
| -rw-r--r-- | components/net/lwip-1.4.0/src/arch/sys_arch.c | 26 | ||||
| -rw-r--r-- | components/net/lwip-1.4.0/src/netif/ethernetif.c | 7 |
2 files changed, 31 insertions, 2 deletions
diff --git a/components/net/lwip-1.4.0/src/arch/sys_arch.c b/components/net/lwip-1.4.0/src/arch/sys_arch.c index 297f819e7a..cbd176e5c0 100644 --- a/components/net/lwip-1.4.0/src/arch/sys_arch.c +++ b/components/net/lwip-1.4.0/src/arch/sys_arch.c @@ -27,6 +27,8 @@ err_t sys_sem_new(sys_sem_t *sem, u8_t count) char tname[RT_NAME_MAX]; sys_sem_t tmpsem; + RT_DEBUG_NOT_REENT + rt_snprintf(tname, RT_NAME_MAX, "%s%d", SYS_LWIP_SEM_NAME, counter); #if SYS_DEBUG @@ -53,6 +55,8 @@ err_t sys_sem_new(sys_sem_t *sem, u8_t count) void sys_sem_free(sys_sem_t *sem) { + RT_DEBUG_NOT_REENT + #if SYS_DEBUG { struct rt_thread *thread; @@ -90,6 +94,8 @@ u32_t sys_arch_sem_wait(sys_sem_t *sem, u32_t timeout) s32_t t; u32_t tick; + RT_DEBUG_NOT_REENT + /* get the begin tick */ tick = rt_tick_get(); #if SYS_DEBUG @@ -161,6 +167,8 @@ err_t sys_mutex_new(sys_mutex_t *mutex) char tname[RT_NAME_MAX]; sys_mutex_t tmpmutex; + RT_DEBUG_NOT_REENT + rt_snprintf(tname, RT_NAME_MAX, "%s%d", SYS_LWIP_MUTEX_NAME, counter); #if SYS_DEBUG @@ -189,6 +197,8 @@ err_t sys_mutex_new(sys_mutex_t *mutex) void sys_mutex_lock(sys_mutex_t *mutex) { + RT_DEBUG_NOT_REENT + #if SYS_DEBUG { struct rt_thread *thread; @@ -226,6 +236,8 @@ void sys_mutex_unlock(sys_mutex_t *mutex) * @param mutex the mutex to delete */ void sys_mutex_free(sys_mutex_t *mutex) { + RT_DEBUG_NOT_REENT + #if SYS_DEBUG { struct rt_thread *thread; @@ -263,6 +275,8 @@ err_t sys_mbox_new(sys_mbox_t *mbox, int size) char tname[RT_NAME_MAX]; sys_mbox_t tmpmbox; + RT_DEBUG_NOT_REENT + rt_snprintf(tname, RT_NAME_MAX, "%s%d", SYS_LWIP_MBOX_NAME, counter); #if SYS_DEBUG @@ -288,6 +302,8 @@ err_t sys_mbox_new(sys_mbox_t *mbox, int size) void sys_mbox_free(sys_mbox_t *mbox) { + RT_DEBUG_NOT_REENT + #if SYS_DEBUG { struct rt_thread *thread; @@ -309,6 +325,8 @@ void sys_mbox_free(sys_mbox_t *mbox) * @param msg message to post (ATTENTION: can be NULL) */ void sys_mbox_post(sys_mbox_t *mbox, void *msg) { + RT_DEBUG_NOT_REENT + #if SYS_DEBUG { struct rt_thread *thread; @@ -319,8 +337,8 @@ void sys_mbox_post(sys_mbox_t *mbox, void *msg) } #endif - //rt_mb_send_wait(*mbox, (rt_uint32_t)msg,RT_WAITING_FOREVER); - rt_mb_send(*mbox, (rt_uint32_t)msg); + rt_mb_send_wait(*mbox, (rt_uint32_t)msg,RT_WAITING_FOREVER); + return; } @@ -355,6 +373,8 @@ u32_t sys_arch_mbox_fetch(sys_mbox_t *mbox, void **msg, u32_t timeout) s32_t t; u32_t tick; + RT_DEBUG_NOT_REENT + /* get the begin tick */ tick = rt_tick_get(); @@ -457,6 +477,8 @@ sys_thread_t sys_thread_new(const char *name, lwip_thread_fn thread, void *arg, { rt_thread_t t; + RT_DEBUG_NOT_REENT + /* create thread */ t = rt_thread_create(name, thread, arg, stacksize, prio, 20); RT_ASSERT(t != RT_NULL); diff --git a/components/net/lwip-1.4.0/src/netif/ethernetif.c b/components/net/lwip-1.4.0/src/netif/ethernetif.c index fe242e8359..b40dd3a2cf 100644 --- a/components/net/lwip-1.4.0/src/netif/ethernetif.c +++ b/components/net/lwip-1.4.0/src/netif/ethernetif.c @@ -94,6 +94,8 @@ static err_t ethernetif_linkoutput(struct netif *netif, struct pbuf *p) struct eth_tx_msg msg; struct eth_device* enetif; + RT_DEBUG_NOT_REENT + enetif = (struct eth_device*)netif->state; /* send a message to eth tx thread */ @@ -117,6 +119,8 @@ static struct eth_device* eth_dev; static err_t ethernetif_init(struct netif *netif) { + RT_DEBUG_NOT_REENT + if( (eth_dev == RT_NULL) || (eth_dev->netif != netif) ) return ERR_MEM; @@ -159,6 +163,9 @@ static err_t ethernetif_init(struct netif *netif) rt_err_t eth_device_init(struct eth_device* dev, const char* name) { struct netif* pnetif; + + RT_DEBUG_NOT_REENT + /* allocate memory */ pnetif = (struct netif*) rt_malloc (sizeof(struct netif)); if (pnetif == RT_NULL) |
