You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by cc...@apache.org on 2017/02/11 01:04:54 UTC
incubator-mynewt-core git commit: MYNEWT-626 Replace
os_task_suspend() with remove.
Repository: incubator-mynewt-core
Updated Branches:
refs/heads/develop a4aa979aa -> 851880542
MYNEWT-626 Replace os_task_suspend() with remove.
Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/85188054
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/85188054
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/85188054
Branch: refs/heads/develop
Commit: 851880542d521316cf2d1339887e367497562bd0
Parents: a4aa979
Author: Christopher Collins <cc...@apache.org>
Authored: Fri Feb 10 17:04:07 2017 -0800
Committer: Christopher Collins <cc...@apache.org>
Committed: Fri Feb 10 17:04:07 2017 -0800
----------------------------------------------------------------------
apps/testbench/src/testbench_mutex.c | 16 ++++++++--------
apps/testbench/src/testbench_sem.c | 8 ++++----
kernel/os/include/os/os_sched.h | 2 +-
kernel/os/include/os/os_task.h | 3 +--
kernel/os/src/os_sched.c | 15 ++++++++-------
kernel/os/src/os_task.c | 6 +++---
6 files changed, 25 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/85188054/apps/testbench/src/testbench_mutex.c
----------------------------------------------------------------------
diff --git a/apps/testbench/src/testbench_mutex.c b/apps/testbench/src/testbench_mutex.c
index 85bf684..59c8158 100644
--- a/apps/testbench/src/testbench_mutex.c
+++ b/apps/testbench/src/testbench_mutex.c
@@ -56,19 +56,19 @@ testbench_mutex_tc_posttest(void* arg)
int taskcount = (int) arg;
if (taskcount >= 1) {
- err = os_task_suspend(&task1);
+ err = os_task_remove(&task1);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 2) {
- err = os_task_suspend(&task2);
+ err = os_task_remove(&task2);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 3) {
- err = os_task_suspend(&task3);
+ err = os_task_remove(&task3);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 4) {
- err = os_task_suspend(&task4);
+ err = os_task_remove(&task4);
TEST_ASSERT(err == OS_OK);
}
@@ -100,19 +100,19 @@ testbench_mutex_posttest(void* arg)
int taskcount = (int) arg;
if (taskcount >= 1) {
- err = os_task_suspend(&task1);
+ err = os_task_remove(&task1);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 2) {
- err = os_task_suspend(&task2);
+ err = os_task_remove(&task2);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 3) {
- err = os_task_suspend(&task3);
+ err = os_task_remove(&task3);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 4) {
- err = os_task_suspend(&task4);
+ err = os_task_remove(&task4);
TEST_ASSERT(err == OS_OK);
}
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/85188054/apps/testbench/src/testbench_sem.c
----------------------------------------------------------------------
diff --git a/apps/testbench/src/testbench_sem.c b/apps/testbench/src/testbench_sem.c
index 5801a60..a14a36f 100644
--- a/apps/testbench/src/testbench_sem.c
+++ b/apps/testbench/src/testbench_sem.c
@@ -44,19 +44,19 @@ testbench_sem_posttest(void* arg)
int taskcount = (int) arg;
if (taskcount >= 1) {
- err = os_task_suspend(&task1);
+ err = os_task_remove(&task1);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 2) {
- err = os_task_suspend(&task2);
+ err = os_task_remove(&task2);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 3) {
- err = os_task_suspend(&task3);
+ err = os_task_remove(&task3);
TEST_ASSERT(err == OS_OK);
}
if (taskcount >= 4) {
- err = os_task_suspend(&task4);
+ err = os_task_remove(&task4);
TEST_ASSERT(err == OS_OK);
}
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/85188054/kernel/os/include/os/os_sched.h
----------------------------------------------------------------------
diff --git a/kernel/os/include/os/os_sched.h b/kernel/os/include/os/os_sched.h
index df14ced..1ac5c8d 100644
--- a/kernel/os/include/os/os_sched.h
+++ b/kernel/os/include/os/os_sched.h
@@ -35,7 +35,7 @@ void os_sched_os_timer_exp(void);
os_error_t os_sched_insert(struct os_task *);
int os_sched_sleep(struct os_task *, os_time_t nticks);
int os_sched_wakeup(struct os_task *);
-int os_sched_suspend(struct os_task *);
+int os_sched_remove(struct os_task *);
void os_sched_resort(struct os_task *);
os_time_t os_sched_wakeup_ticks(os_time_t now);
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/85188054/kernel/os/include/os/os_task.h
----------------------------------------------------------------------
diff --git a/kernel/os/include/os/os_task.h b/kernel/os/include/os/os_task.h
index 64c0850..3b7e652 100644
--- a/kernel/os/include/os/os_task.h
+++ b/kernel/os/include/os/os_task.h
@@ -47,7 +47,6 @@ struct os_task_obj
typedef enum os_task_state {
OS_TASK_READY = 1,
OS_TASK_SLEEP = 2,
- OS_TASK_SUSPEND = 3
} os_task_state_t;
/* Task flags */
@@ -99,7 +98,7 @@ struct os_task {
int os_task_init(struct os_task *, const char *, os_task_func_t, void *,
uint8_t, os_time_t, os_stack_t *, uint16_t);
-int os_task_suspend(struct os_task *t);
+int os_task_remove(struct os_task *t);
uint8_t os_task_count(void);
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/85188054/kernel/os/src/os_sched.c
----------------------------------------------------------------------
diff --git a/kernel/os/src/os_sched.c b/kernel/os/src/os_sched.c
index da90de1..0cbe615 100644
--- a/kernel/os/src/os_sched.c
+++ b/kernel/os/src/os_sched.c
@@ -19,6 +19,7 @@
#include "os/os.h"
#include "os/queue.h"
+#include "os_priv.h"
#include <assert.h>
@@ -29,9 +30,8 @@
* @{
*/
-TAILQ_HEAD(, os_task) g_os_run_list = TAILQ_HEAD_INITIALIZER(g_os_run_list);
-
-TAILQ_HEAD(, os_task) g_os_sleep_list = TAILQ_HEAD_INITIALIZER(g_os_sleep_list);
+struct os_task_list g_os_run_list = TAILQ_HEAD_INITIALIZER(g_os_run_list);
+struct os_task_list g_os_sleep_list = TAILQ_HEAD_INITIALIZER(g_os_sleep_list);
struct os_task *g_current_task;
@@ -194,12 +194,12 @@ os_sched_sleep(struct os_task *t, os_time_t nticks)
}
/**
- * os sched suspend
+ * os sched remove
*
* XXX
* NOTE - This routine is currently experimental and not ready for common use
*
- * Stops a task and removes it from the run list
+ * Stops a task and removes it from the task list.
*
* @return int
*
@@ -207,7 +207,7 @@ os_sched_sleep(struct os_task *t, os_time_t nticks)
* the scheduler
*/
int
-os_sched_suspend(struct os_task *t)
+os_sched_remove(struct os_task *t)
{
if (t->t_state == OS_TASK_SLEEP) {
@@ -215,10 +215,11 @@ os_sched_suspend(struct os_task *t)
} else if (t->t_state == OS_TASK_READY) {
TAILQ_REMOVE(&g_os_run_list, t, t_os_list);
}
- t->t_state = OS_TASK_SUSPEND;
t->t_next_wakeup = 0;
t->t_flags |= OS_TASK_FLAG_NO_TIMEOUT;
+ STAILQ_REMOVE(&g_os_task_list, t, os_task, t_os_task_list);
+
return OS_OK;
}
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/85188054/kernel/os/src/os_task.c
----------------------------------------------------------------------
diff --git a/kernel/os/src/os_task.c b/kernel/os/src/os_task.c
index f3106bd..45c48a1 100644
--- a/kernel/os/src/os_task.c
+++ b/kernel/os/src/os_task.c
@@ -153,12 +153,12 @@ err:
}
/*
- * Suspend specified task
+ * Removes specified task
* XXX
* NOTE: This interface is currently experimental and not ready for common use
*/
int
-os_task_suspend(struct os_task *t)
+os_task_remove(struct os_task *t)
{
struct os_task *current;
int rc;
@@ -202,7 +202,7 @@ os_task_suspend(struct os_task *t)
}
OS_ENTER_CRITICAL(sr);
- rc = os_sched_suspend(t);
+ rc = os_sched_remove(t);
OS_EXIT_CRITICAL(sr);
return rc;
}