From 51b645eb34689ad3ecc316af6733f7be5e0b4e5a Mon Sep 17 00:00:00 2001 From: Gregory Nutt Date: Sat, 25 Jul 2015 12:29:22 -0600 Subject: [PATCH] OS test: add some locking and unlocking of the scheduler to the sporadic scheduler test in order to test a few more cases --- examples/ostest/sporadic.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/examples/ostest/sporadic.c b/examples/ostest/sporadic.c index 1a19d5d1f..0b3233529 100644 --- a/examples/ostest/sporadic.c +++ b/examples/ostest/sporadic.c @@ -96,6 +96,7 @@ static void *fifo_func(void *parameter) { do { + sched_lock(); /* Just to exercise more logic */ ret = sched_getparam(0, ¶m); if (ret < 0) { @@ -104,12 +105,15 @@ static void *fifo_func(void *parameter) } now = time(NULL); + sched_unlock(); } while (now == last); + sched_lock(); /* Just to exercise more logic */ printf("%4lu FIFO: %d\n", (unsigned long)(now-g_start_time), param.sched_priority); last = now; + sched_unlock(); } } @@ -129,6 +133,7 @@ static void *sporadic_func(void *parameter) { do { + sched_lock(); /* Just to exercise more logic */ ret = sched_getparam(0, ¶m); if (ret < 0) { @@ -137,13 +142,16 @@ static void *sporadic_func(void *parameter) } now = time(NULL); + sched_unlock(); } while (now == last && prio == param.sched_priority); + sched_lock(); /* Just to exercise more logic */ printf("%4lu SPORADIC: %d->%d\n", (unsigned long)(now-g_start_time), prio, param.sched_priority); prio = param.sched_priority; last = now; + sched_unlock(); } }