Sebastian Huber wrote:
Hello,
if I apply the following patch
diff --git a/cpukit/score/include/rtems/bspsmp.h
b/cpukit/score/include/rtems/bspsmp.h
index ec8be9f..69cbff4 100644
--- a/cpukit/score/include/rtems/bspsmp.h
+++ b/cpukit/score/include/rtems/bspsmp.h
@@ -104,8 +104,7 @@ void bsp_smp_broadcast_interrupt(void);
* This function must not be called by the main processor. This function
does
* not return to the caller.
*/
-void rtems_smp_secondary_cpu_initialize( void )
- RTEMS_COMPILER_NO_RETURN_ATTRIBUTE;
+void rtems_smp_secondary_cpu_initialize( void );
/**
* @brief Process the incoming interprocessor request.
then the i386 SMP test cases fail on Qemu. I get a General Protection
Fault after the "iret" in _ISR_Handler.
What could be the reason for this?
The manual states you cannot assume registers are restored before
calling the no return function. Is there an assumption about the state
of the registers that made it just work ?
Chris
_______________________________________________
rtems-devel mailing list
rtems-devel@rtems.org
http://www.rtems.org/mailman/listinfo/rtems-devel