1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu
Koen Zandberg eec7aa2e42
cortexm_common: disable IRQ during thread_sched_idle
A race condition is present where an IRQ is serviced between the
priority increase of the PENDSV and the sleep. When the IRQ
is serviced before the WFI sleep, the core will sleep until the next
IRQ and the thread activated by the IRQ will not be scheduled until
a new IRQ triggers.

This commit wraps an IRQ disable and restore around the priority
modification and sleep to prevent interrupts from being serviced until
the WFI call returns.
2020-07-16 11:11:15 +02:00
..
arm7_common cpu/arm7_common: simplify irq_restore() 2020-05-15 13:43:04 +02:00
atmega32u4 cpu/atmega_common: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
atmega128rfa1 cpu/atmega_common: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
atmega256rfr2 Merge pull request #14206 from leandrolanzieri/pr/kconfig/atmega256rfr2_based_boards 2020-06-24 11:06:04 +02:00
atmega328p cpu/atmega_common: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
atmega1281 cpu/atmega_common: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
atmega1284p cpu/atmega_common: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
atmega2560 cpu/atmega_common: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
atmega_common cpu/atmega_common: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
cc26x0 Merge pull request #14296 from leandrolanzieri/pr/cpu/adapt_kconfig_classification 2020-06-17 10:26:20 +02:00
cc26x2_cc13x2 Merge pull request #14296 from leandrolanzieri/pr/cpu/adapt_kconfig_classification 2020-06-17 10:26:20 +02:00
cc26xx_cc13xx cpu/cc26xx_cc13xx: model features in Kconfig 2020-06-08 08:23:45 -05:00
cc430 cpu/cc430: Add Kconfig symbols 2020-06-24 09:27:02 +02:00
cc2538 treewide: fix file permissions 2020-07-08 17:32:36 +02:00
cortexm_common cortexm_common: disable IRQ during thread_sched_idle 2020-07-16 11:11:15 +02:00
efm32 cpu/efm32: DCDC is available on Series 2 as well 2020-07-08 21:54:57 +02:00
esp32 cpu/esp32: support multiple heaps for newlib 2020-07-10 08:42:12 +02:00
esp8266 cpu/esp8266: Add Kconfig symbols 2020-07-07 16:27:43 +02:00
esp_common cpu/esp32: support multiple heaps for newlib 2020-07-10 08:42:12 +02:00
ezr32wg cpu/ezr32wg: Add Kconfig symbols 2020-06-29 14:01:01 +02:00
fe310 cpu/fe310: use common names for heap markers 2020-07-07 17:25:00 +02:00
kinetis cpu/kinetis: Add Kconfig symbols 2020-07-02 14:41:41 +02:00
lm4f120 cpu: Rename CPU_ARCH to CPU_CORE 2020-06-16 12:05:40 +02:00
lpc1768 cpu: Rename CPU_ARCH to CPU_CORE 2020-06-16 12:05:40 +02:00
lpc2387 cpu/lpc2387: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
mips32r2_common Makefile: use normal conditionals 2020-06-29 22:40:29 +02:00
mips_pic32_common cpu/mips_pic32_common: add cpu_model specific assembly symbols dependency 2020-06-28 12:13:32 +02:00
mips_pic32mx cpu/mips: disable BINFILE generation 2020-07-01 08:08:23 +02:00
mips_pic32mz cpu/mips: disable BINFILE generation 2020-07-01 08:08:23 +02:00
msp430_common cpu/msp430_common: Add Kconfig symbols 2020-06-24 09:26:05 +02:00
msp430fxyz cpu/msp430fxyz: Add Kconfig symbols 2020-06-24 09:28:19 +02:00
native gnrc/pktbuf : Move 'GNRC_PKTBUF_SIZE' to 'CONFIG_' 2020-06-11 14:46:36 +05:30
nrf5x_common nrfmin: remove NETOPT_IPV6_IID support 2020-06-25 10:51:05 +02:00
nrf51 cpu: Rename CPU_ARCH to CPU_CORE 2020-06-16 12:05:40 +02:00
nrf52 cpu: Rename CPU_ARCH to CPU_CORE 2020-06-16 12:05:40 +02:00
sam0_common Merge pull request #14007 from benpicco/cpu/sam0_common-pwm 2020-07-09 10:01:08 +02:00
sam3 cpu/sam3: use TIMER_CHANNEL_NUMOF 2020-06-24 00:45:35 +02:00
sam_common cpu/sam_common: remove use of export for LINKFLAGS 2020-01-02 09:50:14 +01:00
samd5x cpu/samd5x: make SAM0_GCLK_TIMER configurable 2020-06-20 00:25:54 +02:00
samd21 Merge pull request #14007 from benpicco/cpu/sam0_common-pwm 2020-07-09 10:01:08 +02:00
saml1x Merge pull request #14303 from fjmolinas/pr_sam0_unified_rtt 2020-06-19 11:30:06 +02:00
saml21 cpu/saml21: adjust RTT_MIN_OFFSET 2020-06-23 11:59:56 +02:00
stellaris_common cpu: do not locally export compilation variables 2019-08-29 10:35:53 +02:00
stm32 cpu/stm32/qdec: test null callback pointer (#14125) 2020-07-10 15:05:53 +02:00
doc.txt cpu: doc typos 2017-01-20 13:36:26 +01:00
Kconfig cpu/kconfig: Rename CPU classification symbols 2020-06-16 14:27:27 +02:00