_CPU_Fatal_halt does not "halt" on Cyrix MediaGX MMX-S CPU (pc586 BSP)

Valery Pykhtin pykhtin at prosoft.ural.ru
Mon Oct 18 08:11:10 UTC 2004


Hi all,

_CPU_Fatal_halt function doesn't work properly on Cyrix MediaGX MMX-S CPU.
The macro is defined as follows:

cpukit\score\cpu\i386\rtems\score\cpu.h

#define _CPU_Fatal_halt( _error ) \
  { \
    asm volatile ( "cli ; \
                    movl %0,%%eax ; \
                    hlt" \
                    : "=r" ((_error)) : "0" ((_error)) \
    ); \
  } 

If I change it to

#define _CPU_Fatal_halt( _error ) \
 while(1)  { \
    asm volatile ( "cli ; \
                    movl %0,%%eax ; \
                    hlt" \
                    : "=r" ((_error)) : "0" ((_error)) \
    ); \
  } 

- all works ok.

Can it be considered as appropriate patch?

Valery




More information about the users mailing list