1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/x86
René Kijewski 677d690e2b core: introduce thread_yield_higher(), yield less
Fixes #1708.

Currently involuntary preemption causes the current thread not only to
yield for a higher prioritized thread, but all other threads of its own
priority class, too.

This PR adds the function `thread_yield_higher()`, which will yield the
current thread in favor of higher prioritized functions, but not for
threads of its own priority class.

Boards now need to implement `thread_yield_higher()` instead of
`thread_yield()`, but `COREIF_NG` boards are not affected in any way.

`thread_yield()` retains its old meaning: yield for every thread that
has the same or a higher priority.

This PR does not touch the occurrences of `thread_yield()` in the periph
drivers, because the author of this PR did not look into the logic of
the various driver implementations.
2014-10-24 00:09:56 +02:00
..
include core: renamed KERNEL_PID_NULL to KERNEL_PID_UNDEF 2014-08-07 16:31:27 +02:00
Makefile Initial import of the x86 port 2014-05-25 13:40:29 +02:00
Makefile.include Initial import of the x86 port 2014-05-25 13:40:29 +02:00
nop_nop_nop.inc Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_atomic.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_cmos.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_glue.c core: harmonizes the data type for the process ID 2014-08-01 12:02:54 +02:00
x86_hwtimer.c core: let valid PIDs start with 1 2014-08-17 19:51:03 +02:00
x86_interrupts.c core: introduce thread_yield_higher(), yield less 2014-10-24 00:09:56 +02:00
x86_memory.c Fix a few cppcheck findings 2014-07-25 08:17:06 +02:00
x86_pci_init.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_pci_strings.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_pci.c Fix a few cppcheck findings 2014-07-25 08:17:06 +02:00
x86_pic.c Fix a few cppcheck findings 2014-07-25 08:17:06 +02:00
x86_pit.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_reboot.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_rtc.c fixed remaining variables to kernel_pid_t 2014-08-07 17:29:53 +02:00
x86_startup.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_threading.c core: introduce thread_yield_higher(), yield less 2014-10-24 00:09:56 +02:00
x86_uart.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_ucontext.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00
x86_videoram.c Initial import of the x86 port 2014-05-25 13:40:29 +02:00