From bd4c4b595993f5c43a24b11aedb43e56e3f6da0a Mon Sep 17 00:00:00 2001 From: Axel Lin Date: Mon, 30 Nov 2015 22:22:28 +0800 Subject: [PATCH] Use SYS_ARCH_SET macro at appropriate places Use SYS_ARCH_SET to simplify the code a bit. Signed-off-by: Axel Lin --- src/api/api_msg.c | 5 +---- src/api/sockets.c | 5 +---- src/core/pbuf.c | 11 ++--------- 3 files changed, 4 insertions(+), 17 deletions(-) diff --git a/src/api/api_msg.c b/src/api/api_msg.c index 64cd52f4..231221d5 100644 --- a/src/api/api_msg.c +++ b/src/api/api_msg.c @@ -366,7 +366,6 @@ err_tcp(void *arg, err_t err) { struct netconn *conn; enum netconn_state old_state; - SYS_ARCH_DECL_PROTECT(lev); conn = (struct netconn *)arg; LWIP_ASSERT("conn != NULL", (conn != NULL)); @@ -374,9 +373,7 @@ err_tcp(void *arg, err_t err) conn->pcb.tcp = NULL; /* no check since this is always fatal! */ - SYS_ARCH_PROTECT(lev); - conn->last_err = err; - SYS_ARCH_UNPROTECT(lev); + SYS_ARCH_SET(conn->last_err, err); /* reset conn->state now before waking up other threads */ old_state = conn->state; diff --git a/src/api/sockets.c b/src/api/sockets.c index 60f38b11..ac9a71a2 100644 --- a/src/api/sockets.c +++ b/src/api/sockets.c @@ -460,7 +460,6 @@ static void free_socket(struct lwip_sock *sock, int is_tcp) { void *lastdata; - SYS_ARCH_DECL_PROTECT(lev); lastdata = sock->lastdata; sock->lastdata = NULL; @@ -468,9 +467,7 @@ free_socket(struct lwip_sock *sock, int is_tcp) sock->err = 0; /* Protect socket array */ - SYS_ARCH_PROTECT(lev); - sock->conn = NULL; - SYS_ARCH_UNPROTECT(lev); + SYS_ARCH_SET(sock->conn, NULL); /* don't use 'sock' after this line, as another task might have allocated it */ if (lastdata != NULL) { diff --git a/src/core/pbuf.c b/src/core/pbuf.c index a6d08382..e7989bab 100644 --- a/src/core/pbuf.c +++ b/src/core/pbuf.c @@ -117,11 +117,7 @@ void pbuf_free_ooseq(void) { struct tcp_pcb* pcb; - SYS_ARCH_DECL_PROTECT(old_level); - - SYS_ARCH_PROTECT(old_level); - pbuf_free_ooseq_pending = 0; - SYS_ARCH_UNPROTECT(old_level); + SYS_ARCH_SET(pbuf_free_ooseq_pending, 0); for (pcb = tcp_active_pcbs; NULL != pcb; pcb = pcb->next) { if (NULL != pcb->ooseq) { @@ -151,10 +147,7 @@ static void pbuf_pool_is_empty(void) { #ifndef PBUF_POOL_FREE_OOSEQ_QUEUE_CALL - SYS_ARCH_DECL_PROTECT(old_level); - SYS_ARCH_PROTECT(old_level); - pbuf_free_ooseq_pending = 1; - SYS_ARCH_UNPROTECT(old_level); + SYS_ARCH_SET(pbuf_free_ooseq_pending, 1); #else /* PBUF_POOL_FREE_OOSEQ_QUEUE_CALL */ u8_t queued; SYS_ARCH_DECL_PROTECT(old_level);