zephyr/tests/kernel
Andy Ross 49398cfbf6 tests/kernel/sched/schedule_api: Relax preemption order constraints
This test was testing for an undocumented and somewhat hyperspecific
behavior: when a process reaches a reschedule point and yields to a
higher priority thread, and there is another equal priority thread
active, which thread gets to run when the higher priority thread
finishes its work?  The original scheduler (because it leaves the
older thread in place in the list) implements the preemption like an
interrupt and returns to the original thread, despite the fact that
this then resets is time slice quantum unfairly.  In SMP mode, where
the current threads cannot live in the active list, the thread gets
added back to the end of the queue and the other thread runs.  In
effect, in UP mode "yield" and "reschedule" mean very slightly
different things where in SMP they act the same.

We don't document either behavior, as it happens.  Relax the test
constraints by adding a single deliberate k_yield() to unify behavior.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2019-09-26 16:54:06 -04:00
..
boot_page_table arch/x86: move arch/x86/include/mmustructs.h to ia32/mmustructs.h 2019-07-03 20:01:17 -04:00
common tests: build kernel/common on all platforms, always 2019-09-25 12:56:32 -04:00
context drivers/timer/hpet.c: migrate to devicetree 2019-09-17 22:37:09 +08:00
critical tests: kernel: critical: alternative test-case for SAM SoCs with WDT 2019-07-11 11:26:01 -05:00
device tests: enable native_posix_64 testing 2019-07-16 10:41:11 -07:00
early_sleep tests/kernel/early_sleep: Fix for fast ticks 2019-07-02 22:52:29 -04:00
fatal tests: fatal: allocate timer outside of stack 2019-09-18 13:27:30 +08:00
fifo cleanup: include/: move misc/util.h to sys/util.h 2019-06-27 22:55:49 -04:00
fp_sharing tests/kernel/fp_sharing: Fix static analysis warning 2019-08-22 07:07:31 -04:00
gen_isr_table riscv32: rename to riscv 2019-08-02 13:54:48 -07:00
interrupt tests: kernel: interrupt: stop excluding ARM platforms 2019-08-29 13:05:12 +02:00
lifo cleanup: include/: move misc/slist.h to sys/slist.h 2019-06-27 22:55:49 -04:00
mbox tests: increase min_ram for two tests 2019-09-12 05:17:39 -04:00
mem_heap/mheap_api_concept malloc: make sure returned memory is properly aligned 2019-07-03 14:17:29 -07:00
mem_pool riscv32: rename to riscv 2019-08-02 13:54:48 -07:00
mem_protect tests/kernel/mem_protect/syscalls: Add cases to test 64 bit arguments 2019-09-12 11:31:50 +08:00
mem_slab cleanup: include/: move atomic.h to sys/atomic.h 2019-06-27 22:55:49 -04:00
mp license: cleanup: add SPDX Apache-2.0 license identifier 2019-04-07 08:45:22 -04:00
msgq/msgq_api test/msgq: adjust overflow test for 64-bit targets 2019-07-04 07:22:43 -04:00
mutex tests: kernel: fix unhandled return values. 2019-08-27 10:01:38 -04:00
obj_tracing k_stack: make it 64-bit compatible 2019-06-14 05:46:29 -04:00
pending lifo/fifo: first word is not always first 4 bytes 2019-06-26 09:08:42 -04:00
pipe tests: clean up fatal error handlers 2019-08-06 19:32:22 -07:00
poll tests: exclude platforms with limited flash 2019-09-23 17:49:46 -07:00
profiling/profiling_api tests: profiling_api: increase idle stack size 2019-09-12 05:17:39 -04:00
queue mempool: make sure max block size isn't smaller than minimum allowed 2019-07-02 19:41:20 -07:00
sched tests/kernel/sched/schedule_api: Relax preemption order constraints 2019-09-26 16:54:06 -04:00
semaphore docs: fix misspelling across the tree 2019-06-19 15:34:13 -05:00
sleep tests/kernel/sleep: relax upper bound for TI CC13X2/CC26X2 RTC 2019-09-19 13:43:10 -05:00
smp tests: enable hsdk and nsim_hs_smp for smp test 2019-08-11 21:18:38 +02:00
spinlock license: cleanup: add SPDX Apache-2.0 license identifier 2019-04-07 08:45:22 -04:00
stack k_stack: make it 64-bit compatible 2019-06-14 05:46:29 -04:00
threads tests: exclude platforms with limited flash 2019-09-23 17:49:46 -07:00
tickless boards: remove quarl_se_c1000 2019-07-29 21:30:25 -07:00
timer tests: timer_api: exclude qemu_x86_coverage 2019-09-19 09:22:09 -04:00
workq tests: work_queue_api: Fix k_delayed_work_remaining_get() test 2019-07-23 13:54:39 +02:00
xip x86: fix XIP SOC support and defaults 2019-09-11 21:11:38 -04:00