[RTEMS Project] #3149: SP 37 Test failure on Beaglebone Black
RTEMS trac
trac at rtems.org
Thu Sep 21 15:35:44 UTC 2017
#3149: SP 37 Test failure on Beaglebone Black
-------------------------+------------------------------
Reporter: Chris Johns | Owner: joel.sherrill@…
Type: defect | Status: new
Priority: normal | Milestone: Indefinite
Component: cpukit | Version: 4.12
Severity: normal | Resolution:
Keywords: Beaglebone |
-------------------------+------------------------------
Comment (by Joel Sherrill):
Works on erc32 and psim
Fails on jmr3904 and xilinx_zynq_a9_qemu
The two failures are difference. On the MIPS, the issue is that
_ISR_Get_level() is not returning the value that was set immediately
above. I am guessing that the _ISR_Set_level() for the mips and arm ports
translates the requested level into a register setting and then doesn't
reverse the translation on the _ISR_Get_level().
The code in question is around line 130 with a printf() added to show the
value:
ISR_Level current = 0;
ISR_Level last_proper_level;
_ISR_Set_level( current );
printf( "_ISR_Get_Level()=0x%08x current=0x%08x\n",
_ISR_Get_level(), current );
rtems_test_assert( _ISR_Get_level() == current );
jmr3904 output
** BEGIN OF TEST SP 37 ***
_ISR_Get_Level()=0x0000007f current=0x00000000
../../../../../../../rtems/c/src/../../testsuites/sptests/sp37/init.c: 133
_ISR_Get_level() == current
On the ARM, it is failing calling the body version of
rtems_interrupt_disable() in rtems/src/intr.c. No obvious failure looking
at the code.
--
Ticket URL: <http://devel.rtems.org/ticket/3149#comment:1>
RTEMS Project <http://www.rtems.org/>
RTEMS Project
More information about the bugs
mailing list