[RTEMS Project] #3060: ARMv7-M interrupt processing is broken

RTEMS trac trac at rtems.org
Tue Jul 11 00:53:56 UTC 2017


#3060: ARMv7-M interrupt processing is broken
-----------------------------+------------------------------
 Reporter:  Sebastian Huber  |       Owner:  Sebastian Huber
     Type:  defect           |      Status:  closed
 Priority:  normal           |   Milestone:  4.11.2
Component:  cpukit           |     Version:  4.11
 Severity:  normal           |  Resolution:  fixed
 Keywords:                   |
-----------------------------+------------------------------

Comment (by Sebastian Huber <sebastian.huber@…>):

 In [changeset:"7e91901303219f10cf865906931c07c31d2e37f4/rtems"
 7e91901/rtems]:
 {{{
 #!CommitTicketReference repository="rtems"
 revision="7e91901303219f10cf865906931c07c31d2e37f4"
 arm: Fix ARMv7-M interrupt processing

 Right after a "msr basepri_max, %[basepri]" instruction an interrupt
 service may still take place (observed at least on Cortex-M7).  However,
 pendable service calls that are activated during this interrupt service
 may be delayed until interrupts are enable again.  The
 _ARMV7M_Pendable_service_call() did not check that a thread dispatch is
 allowed.  Move this test from _ARMV7M_Interrupt_service_leave() to
 _ARMV7M_Pendable_service_call().

 Close #3060.
 }}}

--
Ticket URL: <http://devel.rtems.org/ticket/3060#comment:4>
RTEMS Project <http://www.rtems.org/>
RTEMS Project


More information about the bugs mailing list