Skip to content

NRF51_DK: core_util_are_interrupts_enabled wrong behavior when inside critical section #5198

@maciejbocianski

Description

@maciejbocianski

Description

  • Type: Bug
  • Priority: Major

Bug

Target
NRF51_DK

Toolchain:
GCC_ARM|ARM|IAR

mbed-os sha:
c6f655c

Expected behavior
core_util_are_interrupts_enabled return false when interupt disabled

Actual behavior
core_util_are_interrupts_enabled return true when interupt disabled

Steps to reproduce

...
printf("interrupts_enabled (1): %s\r\n", core_util_are_interrupts_enabled() ? "yes" : "no");
core_util_critical_section_enter();
printf("interrupts_enabled (2): %s\r\n", core_util_are_interrupts_enabled() ? "yes" : "no");
core_util_critical_section_exit();
printf("interrupts_enabled (3): %s\r\n", core_util_are_interrupts_enabled() ? "yes" : "no");
printf("\r\n");
...

Result

interrupts_enabled (1): yes
interrupts_enabled (2): yes
interrupts_enabled (3): yes

Expected result

interrupts_enabled (1): yes
interrupts_enabled (2): no
interrupts_enabled (3): yes

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions