1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/msp430-common
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 net: Initial import of a global packet buffer 2014-10-16 11:52:30 +02:00
atomic.c doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
cpu.c core: introduce thread_yield_higher(), yield less 2014-10-24 00:09:56 +02:00
crash.c doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
hwtimer_cpu.c doc: fix more license headers 2014-08-27 19:20:49 +02:00
irq.c doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
lpm_cpu.c doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
Makefile Make: exterminate 'clean' buildtarget 2014-04-09 23:07:52 +02:00
Makefile.include msp430: provide oneway-malloc implicitly 2014-05-22 15:40:25 +02:00
msp430-main.c remove trailing whitespace and newlines 2014-02-11 18:45:06 +01:00
startup.c doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00